{"push_id":794374690,"size":8,"distinct_size":1,"ref":"refs/heads/dvyukov-irq","head":"1cb210c856c1b69f1e0bb5b1663aea9205b0b2d0","before":"f213f1b741c9468f6a692b012d40bdcd8d8dffca","commits":[{"sha":"f897a686ee6096c1cec511658bc18af28c439e6d","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"improve reports\n\n- Don't print inernal tids in reports, they are not interesting\n  to anybody except us. Print PIDs instead. PIDs are well\n  understood by all kernel developers.\n- Print access address in report. It can be important.\n- Expect that we always have correct CPU number. Why should not we?\n- Properly report old thread PID. We took it from old->kid,\n  but the thread could have been already reused for a new thread.\n- Also rename kid to pid. pid is a well-established name for this.\n  No need to invent new terms.\n- Also remove kt_stack_print_current, it does not wotk without\n  frame pointers.","distinct":false,"url":"https://api.github.com/repos/google/ktsan/commits/f897a686ee6096c1cec511658bc18af28c439e6d"},{"sha":"3522a7ce847d85c967422764fe51c910c27f51a6","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"improve kt_access_range_imitate\n\nThere are three issues:\n1. We can do up to KT_SHADOW_SLOTS more work than needed.\n   For example, for a 7 byte block we will write shadow\n   7*4 = 28 times.\n2. We write O(N) times to trace which wastes trace space.\n   It is enough to write to trace just once.\n2. Handling of unaligned beginning and ending is incorrect.\n   It overwrites all shadow slots with the last value.\n   For example, if size is 2, we will actually remember\n   access only to the second byte.\n\nWrite only once to trace and don't pretent that we can handle\nunaligned blocks of arbitrary size.","distinct":false,"url":"https://api.github.com/repos/google/ktsan/commits/3522a7ce847d85c967422764fe51c910c27f51a6"},{"sha":"24d1bdbf9a5d0b4bd8ec6d660fb3325a91116d1f","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"don't write N times to trace in kt_access_range\n\nkt_access_range unnecessary consumes O(N) space in trace.\nWrite to trace only once.","distinct":false,"url":"https://api.github.com/repos/google/ktsan/commits/24d1bdbf9a5d0b4bd8ec6d660fb3325a91116d1f"},{"sha":"bfc0f1e4dc80dfdde3629a703037950a272851f1","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"find races on mutexes\n\nInstrument mutex lock/unlock as reads of the memory location.\nThis can catch unsafe publication of mutexes and racy destruction.","distinct":false,"url":"https://api.github.com/repos/google/ktsan/commits/bfc0f1e4dc80dfdde3629a703037950a272851f1"},{"sha":"eb3ebac049ad4a192233b0ea1103ad59fef3406f","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"restore top frame in first report stack\n\nIt was missing after switch to shadow stack.","distinct":false,"url":"https://api.github.com/repos/google/ktsan/commits/eb3ebac049ad4a192233b0ea1103ad59fef3406f"},{"sha":"ecca22bc7343d77c53016fa2d7938476c0d701b4","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"introduce named constants for access size logarithms","distinct":false,"url":"https://api.github.com/repos/google/ktsan/commits/ecca22bc7343d77c53016fa2d7938476c0d701b4"},{"sha":"3b912642d52e809f8cd08df88f44c35f89f741ed","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"restore kt_stack_print_current for debugging","distinct":false,"url":"https://api.github.com/repos/google/ktsan/commits/3b912642d52e809f8cd08df88f44c35f89f741ed"},{"sha":"1cb210c856c1b69f1e0bb5b1663aea9205b0b2d0","author":{"email":"05e8181be3150e47da8fe2e1f18d381c75496ff4@google.com","name":"Dmitry Vyukov"},"message":"Merge pull request #80 from google/dvyukov-irq2\n\nAssorted changes","distinct":true,"url":"https://api.github.com/repos/google/ktsan/commits/1cb210c856c1b69f1e0bb5b1663aea9205b0b2d0"}]}