{"push_id":1437278377,"size":1,"distinct_size":1,"ref":"refs/heads/openzfsci-test-2","head":"bd104cf877d7c44833657a7d23534b73cf31a4a5","before":"7fd605d8ceb20c706b5be154c81fd77840443db0","commits":[{"sha":"bd104cf877d7c44833657a7d23534b73cf31a4a5","author":{"name":"Prakash Surya","email":"904e529b3e1d9a5db38845125535b2686730807f@delphix.com"},"message":"7280 Allow changing global libzpool variables in zdb and ztest through command line\n\nReviewed by: Matthew Ahrens <mahrens@delphix.com>\nReviewed by: Dan Kimmel <dan.kimmel@delphix.com>\n\nzdb is very handy for diagnosing problems with a pool in a safe and\nquick way. When a pool is in a bad shape, we often want to disable some\nfail-safes, or adjust some tunables in order to open them. In the\nkernel, this is done by changing public variables in mdb. The goal of\nthis feature is to add the same capability to zdb and ztest, so that\nthey can change libzpool tuneables from the command line.\n\nThis patch enables the setting of ZFS global variables before running\nzdb or ztest, replicating the functionality currently provided in the\nkernel by mdb or /etc/system. This is done using new the \"-o\" option:\n\n    $ zdb -o zfs_max_missing_tvds=1 -e -dd brokenpool\n\nThis example would set the boolean zfs_max_missing_tvds to TRUE before\nexecuting the import of the pool, thus allowing zdb to analyze the\ncontents of a pool that is missing top-level devices.\n\nSince dlsym is used to access the variable, there is no way to know the\nsize of the variable, hence by default we cast it as a 32-bit integer.\nThis should not be a problem for most tunables, as they are generally\neither switches, or small numbers. For 64-bit numbers, we can still set\nthe lower 32-bits, however this wouldn't work on big-endian systems.\n\nWe could use CTF/ELF info to gather the size of the variable and then\ncast it to the appropriate type, thus removing the limitations above.\nHowever, this appears to be somewhat difficult, and the benefit of such\ncomplexity is limited.\n\nUpstream Bugs: DLPX-43356","distinct":true,"url":"https://api.github.com/repos/prakashsurya/openzfs/commits/bd104cf877d7c44833657a7d23534b73cf31a4a5"}]}
{"actor":{"display_login":"prakashsurya"}}