{"push_id":2604193879,"size":75,"distinct_size":0,"ref":"refs/heads/b_neo_stable_2.1","head":"bb51c1c6a9348b3c0cb1fd9fe97b902526a1c3ce","before":"8ca6e6d28b96e098a577df89832db8d20dff1bae","commits":[{"sha":"e3cd16514f2dd82bc50bc27608dd83d555b48e9b","author":{"name":"Elena Gryaznova","email":"82e4094ad19cfe3ed7049467283f545c9efaabe7@seagate.com"},"message":"MRP-4412 tests: fix REQFAIL calculation\n\nREQFAIL is the number of times that a sleep is allowed to be\nless than $MINSLEEP before the test is considered a fail.\nThe result of\n  \"DURATION / SERVER_FAILOVER_PERIOD * REQFAIL_PERCENT / 100\"\nmay not be an integer (165.6) and test fails with :\n  \"Failed to load with for a minimum\n  period of 166 times ( REQFAIL=165 )\".\nPatch rounds up REQFAIL value for such case.\n\nTest-Parameters: forbuildonly\nSigned-off-by: Elena Gryaznova <elena.gryaznova@seagate.com>\nChange-Id: I1f31c5884ec4aecf732e6af33d5ec96067c2e5c2\nReviewed-on: http://es-gerrit.xyus.xyratex.com:8080/16032\nReviewed-by: Vladimir Saveliev <vladimir.saveliev@seagate.com>\nReviewed-by: Andriy Skulysh <andriy.skulysh@seagate.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/e3cd16514f2dd82bc50bc27608dd83d555b48e9b"},{"sha":"8afcd8fe2cd52ca83078605a9cf5b684da76b2db","author":{"name":"Andriy Skulysh","email":"f21a2995f7495295ff6bcdeec4bd11b32c8624d9@seagate.com"},"message":"MRP-4443 ptlrpc: update replay cursor when close during replay\n\nThe replay cursor should be updated properly when close happened\nduring replay, otherwise, ptlrpc_replay_next() could run into a\ndead loop due to an invalid replay cursor:\n\n- replay cursor is moved to an open request during replay;\n- application close that open file, so the rq_replay of the open\n  request is cleared;\n- ptlrpc_replay_next() calls ptlrpc_free_committed() to free\n  committed/closed requests, the open request is removed from\n  the committed list, so the replay cursor is changed to an\n  empty list_head now. The open request won't be freed now since\n  it's still held by the pending close request;\n- ptlrpc_replay_next() continue to move the replay cursor to\n  next and run into a dead loop at the end;\n\nAnother change in this patch is to remove the out of date comments\nin ptlrpc_replay_next() and cover the whole process of finding\nreplay request within imp_lock, because:\n\n1. With two separated replay lists and replay cursor introduced,\n   finding replay request won't take much time as before, it's\n   not necessary to do this \"lock -> unlock -> lock -> unlock\"\n   trick anymore;\n\n2. Nowadays there are various kind of non-replay requests are\n   allowed during recovery, so ptlrpc_free_committed() may run in\n   parallel to remove an open request while ptlrpc_replay_next()\n   is iterating the open requests list;\n\nChange-Id: Idede10c85b452ae45bbb06281ac3ff29faf90d1e\nIntel-bug-id: LU-8765\nSigned-off-by: Niu Yawei <yawei.niu@intel.com>\nReviewed-on: https://review.whamcloud.com/23418\nReviewed-by: Yang Sheng <yang.sheng@intel.com>\nReviewed-by: John L. Hammond <john.hammond@intel.com>\nReviewed-by: Oleg Drokin <oleg.drokin@intel.com>\nSigned-off-by: Andriy Skulysh <andriy.skulysh@seagate.com>\nReviewed-on: http://es-gerrit.xyus.xyratex.com:8080/16582\nReviewed-by: Alexandr Boyko <alexander.boyko@seagate.com>\nReviewed-by: Vitaly Fertman <vitaly.fertman@seagate.com>\nTested-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/8afcd8fe2cd52ca83078605a9cf5b684da76b2db"},{"sha":"ceb3fddc35493aef840ca3cbc4c4402ac43b30fa","author":{"name":"Andrew Perepechko","email":"6ed6c50b4563fb3073f14a16daedbd79eea4d6ae@seagate.com"},"message":"MRP-4480 tests: MGS/filesystems does not match registered fs's\n\nIf a client mount for an unexisting filesystem fails, an empty\nCONFIGS/$FSNAME-client is created and lctl get_param mgs.MGS.filesystems\nwill list $FSNAME among other filesystems.\n\nThe test case checks this does not happen anymore.\n\nChange-Id: I63e336619412881e581981626656f0de47e7ee1d\nReviewed-on: http://es-gerrit.xyus.xyratex.com:8080/16354\nReviewed-by: Alexandr Boyko <alexander.boyko@seagate.com>\nReviewed-by: Alexey Leonidovich Lyashkov <alexey.lyashkov@seagate.com>\nTested-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/ceb3fddc35493aef840ca3cbc4c4402ac43b30fa"},{"sha":"73842625e94dc9046c6d6f69c4c5a2eb8398df0b","author":{"name":"Andrew Perepechko","email":"6ed6c50b4563fb3073f14a16daedbd79eea4d6ae@seagate.com"},"message":"MRP-4480 mgs: do not create empty config llogs\n\nAvoid creating empty params-client and $FSNAME-client\nconfig logs.\n\nIf these logs are created, lctl get_param mgs.MGS.filesystems\nwill list \"params\" and \"$FSNAME\" as registered filesystems.\n\nChange-Id: I0e5465aad423f0cfdd3cf107c5f38c2d3b45c0c2\nSigned-off-by: Andrew Perepechko <andrew.perepechko@seagate.com>\nReviewed-on: http://es-gerrit.xyus.xyratex.com:8080/16681\nReviewed-by: Alexandr Boyko <alexander.boyko@seagate.com>\nReviewed-by: Alexey Leonidovich Lyashkov <alexey.lyashkov@seagate.com>\nTested-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/73842625e94dc9046c6d6f69c4c5a2eb8398df0b"},{"sha":"868c742c9ca8fdfe9ee4bb81a674f70b0b947041","author":{"name":"Fan Yong","email":"ab453e5c5a64c8df72d3573911da2af406d0c762@intel.com"},"message":"LU-6102 osd: log message when trigger OI scrub\n\nThese log messages can give us more information about why\nthe OI scrub is triggered.\n\nSigned-off-by: Fan Yong <fan.yong@intel.com>\nChange-Id: I4229fd41c61b4de9a8ad00c486ba92b5037db3a1\nReviewed-on: http://review.whamcloud.com/13314\nTested-by: Jenkins\nTested-by: Maloo <hpdd-maloo@intel.com>\nReviewed-by: Andreas Dilger <andreas.dilger@intel.com>\nReviewed-by: Lai Siyao <lai.siyao@intel.com>\nReviewed-by: Oleg Drokin <oleg.drokin@intel.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/868c742c9ca8fdfe9ee4bb81a674f70b0b947041"},{"sha":"7370d9b59fdeffa1b43571f1dc2f486ea17eef10","author":{"name":"Fan Yong","email":"ab453e5c5a64c8df72d3573911da2af406d0c762@intel.com"},"message":"LU-6996 osd-ldiskfs: handle stale OI mapping cache\n\nOn server side, the RPC service thread may cache one OI mapping\non its stack, such OI mapping will become invalid if some other\nremoved the object by race. If the RPC service thread uses the\ncached OI mapping and finds the inode that has been unlinked\nand reused by other object with no LMA generated yet, then\nthe osd_check_lma() should NOT skip such case to avoid the\ncaller mis-using the inode by wrong.\n\nThis patch is back-ported from the following one:\nLustre-commit: ce10b0309879954997d894b494f608b80fcd6d52\nLustre-change: http://review.whamcloud.com/16157\n\nSigned-off-by: Fan Yong <fan.yong@intel.com>\nChange-Id: If02ef455a3ff90117286f53bdd14ac5efcd2dded\nReviewed-on: http://review.whamcloud.com/16356\nTested-by: Jenkins\nTested-by: Maloo <hpdd-maloo@intel.com>\nReviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>\nReviewed-by: Lai Siyao <lai.siyao@intel.com>\nReviewed-by: Oleg Drokin <oleg.drokin@intel.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/7370d9b59fdeffa1b43571f1dc2f486ea17eef10"},{"sha":"d90717010ddeddec5e3c6df5b310ece21226cba2","author":{"name":"John L. Hammond","email":"250de275cb407ebee9cf359bb33b5906af685700@intel.com"},"message":"LU-7084 obd: correct some OBD allocator macro defines\n\nUse protective parentheses around instances of the GFP mask parameters\nin the definitions of __OBD_MALLOC_VERBOSE() and\n__OBD_SLAB_ALLOC_VERBOSE() to prevent unexpected expansions.\n\nSigned-off-by: John L. Hammond <john.hammond@intel.com>\nChange-Id: I0c3307ae488fb4f79a07db8a3b870dbcb609da0b\nReviewed-on: http://review.whamcloud.com/17755\nTested-by: Jenkins\nTested-by: Maloo <hpdd-maloo@intel.com>\nReviewed-by: Yang Sheng <yang.sheng@intel.com>\nReviewed-by: Andreas Dilger <andreas.dilger@intel.com>\nReviewed-by: Bob Glossman <bob.glossman@intel.com>\nReviewed-by: Mike Pershin <mike.pershin@intel.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/d90717010ddeddec5e3c6df5b310ece21226cba2"},{"sha":"4637303b779cbb472fdd52e686b482339776610d","author":{"name":"Yang Sheng","email":"cabb263e18afcaf4059c366a46925ccd3096918d@intel.com"},"message":"LU-7084 mem: code cleanup for memory allocation\n\nThis patch just want fix some memory allocation issues.\n\nSigned-off-by: Yang Sheng <yang.sheng@intel.com>\nChange-Id: I53d622d5c4e71ce42488a6cfce17a10063cf4f4d\nReviewed-on: http://review.whamcloud.com/17673\nTested-by: Jenkins\nReviewed-by: Andreas Dilger <andreas.dilger@intel.com>\nReviewed-by: Fan Yong <fan.yong@intel.com>\nTested-by: Maloo <hpdd-maloo@intel.com>\nReviewed-by: Mike Pershin <mike.pershin@intel.com>\nReviewed-by: Oleg Drokin <oleg.drokin@intel.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/4637303b779cbb472fdd52e686b482339776610d"},{"sha":"4bb99cb39b1fa06ae40adc4ce29b802194d35119","author":{"name":"Alexey Lyashkov","email":"e559f2e95b4c87d02663d948f323de340ca46c51@seagate.com"},"message":"MRP-4474 osd-ldiskfs: avoid extra search\n\nExtent tree grow greatly durin random IO test with small block size.\nosd_is_mapped responsible to large cpu consumption in this case.\n\n|          |\n|          |--94.49%-- ldiskfs_es_find_delayed_extent_range\n|          |          ldiskfs_fiemap\n|          |          osd_is_mapped\n|          |          osd_declare_write_commit\n|          |\n|          |--5.49%-- ldiskfs_fiemap\n|          |          osd_is_mapped\n|          |          osd_declare_write_commit\n|\n|--21.80%-- ldiskfs_es_find_delayed_extent_range\n|          |\n|          |--100.00%-- ldiskfs_fiemap\n|          |          osd_is_mapped\n\nlet's cache a osd_is_mapped result to avoid extra search in extent\ntree,\n\nSigned-off-by: Alexey Lyashkov <alexey.lyashkov@seagate.com>\nReviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>\nReviewed-by: Artem Blagodarenko <artem.blagodarenko@seagate.com>\nTested-by: Elena Gryaznova <elena.gryaznova@seagate.com>\nTested-by: Eugene Birkine <Eugene.Birkine@seagate.com>\nReviewed-on: http://es-gerrit.dev.cray.com:8080/#/c/16323/\nChange-Id: Ie86a3b8b08e680658d87c77761c300d1216321da","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/4bb99cb39b1fa06ae40adc4ce29b802194d35119"},{"sha":"2c8f264a2b6c104944d839c5e1e9642427a0183f","author":{"name":"Sergey Cheremencev","email":"23dc2bd1aa674714f4e923223bc2890760923b94@seagate.com"},"message":"MRP-4392 osp: can't create IDIF fid number > 0xFFFFFFFF\n\nfid_is_last_id didn't recognize IDIFes. This caused new\nsequence allocation at OST side despite of MDT still used\ninitial FID_SEQ_IDIF. Finally allocation failed with -115\nreturned from osd_check_lma:\nosd_check_lma()) lustre-OST0000-osd: FID [0x100000001:0x0:0x0] != self_fid [0x100000000:0x0:0x0]\n\nPatch has several typical \"IDIF\" fixes. Also lov_objid fix\nto store all 48 IDIF bits instead of 32.\n\nChange-Id: Ifbda97a5b228254aedcb050c3d94d2ecb3a9590c\nSigned-off-by: Sergey Cheremencev <sergey.cheremencev@seagate.com>\nReviewed-on: http://es-gerrit.dev.cray.com:8080/15656\nReviewed-by: Alexander Boyko <c17825@cray.com>\nReviewed-by: Alexey Lyashkov <c17817@cray.com>\nTested-by: Elena Gryaznova <c17455@cray.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/2c8f264a2b6c104944d839c5e1e9642427a0183f"},{"sha":"f8b8f4b975d96946e776835cf9b90ea2fe39ad94","author":{"name":"Vladimir Saveliev","email":"879eaaf877f125b8041a558ec5014a456566371e@seagate.com"},"message":"MRP-4505 tests: failover after lctl replace_nids\n\nThis test applies configuration with failover (nid1,nid2:nid3,nid4)\nand then applies configuration without failover (nid1,nid2).\nTestcases are covered:\n1) List of nids applied don’t lead to oversized configuration string\n2) New failover support (“:” symbol)\n3) Configuration without failover can be applied after configuration with\nfailover\n\nChange-Id: Id9b11dd2d3ee518721b932b170fea616b24a0f9d\nSigned-off-by: Vladimir Saveliev <vladimir.saveliev@seagate.com>\nTest-Parameters: layout=octet_dne testlist=conf-sanity/105\nReviewed-by: Alexandr Boyko <alexander.boyko@seagate.com>\nReviewed-by: Vladimir Saveliev <vladimir.saveliev@seagate.com>\nTested-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>\nReviewed-on: http://es-gerrit.dev.cray.com:8080/16857","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/f8b8f4b975d96946e776835cf9b90ea2fe39ad94"},{"sha":"90c5e05667d734fbed253db3dca296378180123b","author":{"name":"Artem Blagodarenko","email":"adee7225015ed3af75d48a7144e4e9b8c779ff79@seagate.com"},"message":"MRP-4505 mgs: replace_nids large string and failover support\n\nReplace_nids uses nids list as new UUID. UUID string\nlength is limited by 38 symbols. So new nids list need\nto be less then 38 symbols.\n\nWith this patch first nid in list string representation\nis used for UUID as this done for failover nids.\n\nReplace nids finds records for given device and regenerates\nlines that contain old nids. add_uuid and add_conn lines for\nfailover used to be deleted during replace_nids which breaks\nfailover configuration.\n\nThis patch adds failover support to replace_nids command.\nFor example:\n\nlctl replace_nids lustre-MDT0000 nid1,nid2:nid3,nid4:nid5,nid6\n\nnid3,nid4 - nids from first failover node\nnid5,nid6 - nids from second failover node\n\nChange-Id: I41b4501c71c259f3ed36af438933a5eeab855255\nSigned-off-by: Artem Blagodarenko <artem.blagodarenko@seagate.com>\nReviewed-on: http://es-gerrit.dev.cray.com:8080/16858\nReviewed-by: Alexander Boyko <c17825@cray.com>\nReviewed-by: Vladimir Saveliev <c17830@cray.com>\nTested-by: Elena Gryaznova <c17455@cray.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/90c5e05667d734fbed253db3dca296378180123b"},{"sha":"a7538aff4b30815da4363edb8657ae9611def9a9","author":{"name":"Christopher J. Morrone","email":"1d83e6ac2379b06e55cc672db2fbfd7afcad693f@llnl.gov"},"message":"LU-5053 ptlrpc: Add schedule point to ptlrpc_check_set()\n\nMost ptlrpc sets are believed to be small and bounded in length.  However\nat the very least the ptlrpcd reuses the ptlrpc sets at its primary work\nqueue.  This work queue can easily have work added faster than the ptlrpcd\nthread can process the work.  The unbounded work can lead to the ptlrpcd\nmonopolizing a CPU for hundreds of seconds.  Obviously a well-behaved\nkernel function should obey the scheduler and share the processor.\n\nWe address that problem by inserting a cond_resched() at the top of the\nmain loop of ptlrpc_check_set().\n\nSome have suggested putting the cond_resched() lower in the loop.  However,\nthe only current way to bound the number of loops that we exceed our\nallocated run time is to put the call at the top of the loop.  Putting it\nlower would allow an unknown number (and since it is unknown, it might be\nexcessively large at times) of cycles through the loop before a\nresched is allowed.\n\nChange-Id: If46a6e1af1d0fdae24af623045aaf902a04fc589\nSigned-off-by: Christopher J. Morrone <morrone2@llnl.gov>\nReviewed-on: http://review.whamcloud.com/10358\nTested-by: Jenkins\nTested-by: Maloo <hpdd-maloo@intel.com>\nReviewed-by: Oleg Drokin <oleg.drokin@intel.com>\nReviewed-by: Liang Zhen <liang.zhen@intel.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/a7538aff4b30815da4363edb8657ae9611def9a9"},{"sha":"7733db09633bfcfb078501a541ce82fc3cf45ed7","author":{"name":"Yang Sheng","email":"cabb263e18afcaf4059c366a46925ccd3096918d@intel.com"},"message":"LU-4958 lov: don't crash accessing LOV object with FID{0,0}\n\nSome object maybe has a corrupted LOV EA or a hole in\nLOV EA. We should not crash client in such case.\n\nThis is a back-port patch from master:\nLustre-change: http://review.whamcloud.com/10042\nLustre-commit: 754bf71c650c427acfb0fe35017e8f9c1eb9fa7d\n\nSigned-off-by: Fan Yong <fan.yong@intel.com>\nSigned-off-by: Yang Sheng <yang.sheng@intel.com>\nChange-Id: I08cdd770c369eb51aa92b04a838fbb6784d36bad\nReviewed-on: http://review.whamcloud.com/12740\nTested-by: Jenkins\nReviewed-by: Jian Yu <jian.yu@intel.com>\nTested-by: Maloo <hpdd-maloo@intel.com>\nReviewed-by: Andreas Dilger <andreas.dilger@intel.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/7733db09633bfcfb078501a541ce82fc3cf45ed7"},{"sha":"063d5e6d2b2f746a6421abc632b2867dcbfdcbe4","author":{"name":"Fan Yong","email":"ab453e5c5a64c8df72d3573911da2af406d0c762@intel.com"},"message":"LU-4604 obdclass: handle ldt_device_nr/ldt_linkage properly\n\nIt is partly back-ported the patch from master:\n\"LU-4604 lfsck: LFSCK async updates RPC flow control\"\nBut this only contains the part related with lu_device fixes,\nnot the lfsck async RPC changes.\n\nThere was no protection when inc/dec lu_device_type::ldt_device_nr,\nwhich may caused the ldt_device_nr to be wrong and trigger assert.\nThis patch redefine lu_device_type::ldt_device_nr as atomic type.\n\nThere was no protection when add/del lu_device_type::ldt_linkage\ninto/from the global lu_device_types list, which may caused bad\naddress accessing. This patch uses the existing obd_types_lock\nto protect related operations.\n\nWe do NOT need lu_types_stop() any longer. Such function scans\nthe global lu_device_types list, and for each type item on it\nwhich has zerod lu_device_type::ldt_device_nr, call its stop()\nmethod. In fact, the lu_device_type::ldt_device_nr only will be\nzero when the last lu_device_fini() is called, and at that time,\ninside the lu_device_fini(), its stop() method will be called.\nSo it is unnecessary to call the stop() again via lu_types_stop().\n\nLustre-commit: caef708d4040fd13499a11a42507ba56f9454298\nLustre-change: http://review.whamcloud.com/8694\n\nSigned-off-by: Fan Yong <fan.yong@intel.com>\nChange-Id: Ibea9e8f51191de76dbd2e199e01b1d2adff35c75\nReviewed-on: http://review.whamcloud.com/12531\nTested-by: Jenkins\nTested-by: Maloo <hpdd-maloo@intel.com>\nReviewed-by: Mike Pershin <mike.pershin@intel.com>\nReviewed-by: Andreas Dilger <andreas.dilger@intel.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/063d5e6d2b2f746a6421abc632b2867dcbfdcbe4"},{"sha":"c21d7c6fb9bcc607f7eba136ba57ab016bed0ba3","author":{"name":"Alexander Boyko","email":"608a574bc806d7f5b6ef31924fbdd6759a48f12a@cray.com"},"message":"MRP-4442 test: add 253 sanity-hsm\n\nPatch adds test_253 sanity-hsm, to check hsm release\noperation when cl_object_attr_get failed. It produces\nthe wrong size-on-mds for a released file.\n\nSigned-off-by: Alexander Boyko <c17825@cray.com>\nChange-Id: Ibd52b404857605274b4a3872b1620f26375ba905\nReviewed-on: http://es-gerrit.dev.cray.com:8080/16970\nReviewed-by: Sergey Cheremencev <c17829@cray.com>\nReviewed-by: Artem Blagodarenko <c17828@cray.com>\nTested-by: Elena Gryaznova <c17455@cray.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/c21d7c6fb9bcc607f7eba136ba57ab016bed0ba3"},{"sha":"08a47e766bf647fa9abb95c8dd6e95b764b1319b","author":{"name":"Alexander Boyko","email":"608a574bc806d7f5b6ef31924fbdd6759a48f12a@cray.com"},"message":"MRP-4442 hsm: don't release with wrong size\n\nThe result of ll_merge_lvb operation was ignored during\nll_hsm_release. For this case the released file could have\nthe wrong size on MDS, like\nFile: ‘released.file’\nSize: 0  Blocks: 0  IO Block: 4194304 regular empty file\n\nSigned-off-by: Alexander Boyko <c17825@cray.com>\nChange-Id: I6d765db07a94068a74aded68c008fe3b74437430\nReviewed-on: http://es-gerrit.dev.cray.com:8080/16982\nReviewed-by: Sergey Cheremencev <c17829@cray.com>\nReviewed-by: Artem Blagodarenko <c17828@cray.com>\nTested-by: Elena Gryaznova <c17455@cray.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/08a47e766bf647fa9abb95c8dd6e95b764b1319b"},{"sha":"b07bcdc3c299bbe93b4d79ed0add2ecac21f657d","author":{"name":"Andriy Skulysh","email":"f21a2995f7495295ff6bcdeec4bd11b32c8624d9@seagate.com"},"message":"MRP-4512 ldiskfs: divide by 0 in ldiskfs_mb_normalize_request\n\ns_mb_prealloc_table is zeroed during update via procfs.\n\nAdd s_mb_prealloc_table protection by seqlock.\n\nChange-Id: I6f53a49211dbf707dae398d99856fd012153a0c6\nSigned-off-by: Andriy Skulysh <andriy.skulysh@seagate.com>\nReviewed-on: http://es-gerrit.dev.cray.com:8080/16747\nReviewed-by: Alexander Boyko <c17825@cray.com>\nReviewed-by: Andrew Perepechko <c17827@cray.com>\nTested-by: Elena Gryaznova <c17455@cray.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/b07bcdc3c299bbe93b4d79ed0add2ecac21f657d"},{"sha":"e3c4caaf191115779b137666c509b70641238793","author":{"name":"Sergey Cheremencev","email":"d1a324049eee9555af02b5ddcc23084555f4ad59@cray.com"},"message":"MRP-4595 tests: deadlock around cdt_request_lock\n\nRace archive(mdt_hsm_agent_send) vs coordinator\nunregistering(mdt_hsm_ct_unregister). In case of\nerror from mdt_hsm_agent_send->do_set_info_async\nwe shouldn't face a deadlock around\ncdt_request_lock.\n\nChange-Id: Ia747fa71ebf726e647b0e25719060addcdebf6ea\nSigned-off-by: Sergey Cheremencev <c17829@cray.com>\nReviewed-on: http://es-gerrit.dev.cray.com:8080/16931\nReviewed-by: Alexander Zarochentsev <c17826@cray.com>\nReviewed-by: Alexander Boyko <c17825@cray.com>\nTested-by: Elena Gryaznova <c17455@cray.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/e3c4caaf191115779b137666c509b70641238793"},{"sha":"cc96810519f723c297b99f0c7baa9f111310996e","author":{"name":"Sergey Cheremencev","email":"d1a324049eee9555af02b5ddcc23084555f4ad59@cray.com"},"message":"MRP-4595 hsm: avoid deadlock around cdt_request_lock\n\nMRP-3666 introduced ability to hold read lock(cdt_request_lock)\n2 times consequentially.\n\n\tmdt_cdt_find_request  <---- down_read\n\tmdt_hsm_add_hal\n\tmdt_hsm_agent_send\n\thsm_cancel_all_actions  <---- down_read\n\tmdt_hsm_agent_unregister_cancel_actions\n\tmdt_hsm_ct_unregister\n\nRace with mdt_hsm_agent_send in separate thread may lead to\ndeadlock as mdt_hsm_agent_send holds write lock when adds\nor removes(in case of error) request.\n\n\tmdt_cdt_remove_request  <---- down_write\n\tmdt_hsm_agent_send\n\tmdt_coordinator\n\nFix: don't take the 2nd read lock in mdt_hsm_add_hal\nwhen agent is unregistered.\n\nChange-Id: Ib5d3ccebcd595faf70c70b93906dfdd7aff95ccb\nSigned-off-by: Sergey Cheremencev <c17829@cray.com>\nReviewed-on: http://es-gerrit.dev.cray.com:8080/16934\nReviewed-by: Alexander Zarochentsev <c17826@cray.com>\nReviewed-by: Alexander Boyko <c17825@cray.com>\nTested-by: Elena Gryaznova <c17455@cray.com>","distinct":false,"url":"https://api.github.com/repos/Xyratex/lustre-stable/commits/cc96810519f723c297b99f0c7baa9f111310996e"}]}
{"actor":{"display_login":"MorpheusTeam"}}