{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":472106892,"defaultBranch":"master","name":"linux-usermode-driver-platform","ownerLogin":"MonterraByte","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-03-20T21:26:48.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/30274651?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1720761626.0","currentOid":""},"activityList":{"items":[{"before":"48221379df0accae781ad876d6209afea5f86dbf","after":"74074af5b4a5230e4f082ddf0b4eef3cc84ecda0","ref":"refs/heads/master","pushedAt":"2024-08-20T14:46:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Normalize error code returns","shortMessageHtmlLink":"Normalize error code returns"}},{"before":"92b5fd84184f50092c178766f9f7cf1e2e584f05","after":"48221379df0accae781ad876d6209afea5f86dbf","ref":"refs/heads/master","pushedAt":"2024-07-30T07:21:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Try to prevent a umdp_connection from being used from child processes\n\nAfter `fork()`, the child process would have access to the parent's\numdp_connection, which could lead to unexpected results.\n\nThis commit aborts the process if a child process attempts to use the\nparent's umdp_connection.","shortMessageHtmlLink":"Try to prevent a umdp_connection from being used from child processes"}},{"before":"c21ba3446a11c0da2827c960939af3d8f4c806d8","after":"92b5fd84184f50092c178766f9f7cf1e2e584f05","ref":"refs/heads/master","pushedAt":"2024-07-30T06:54:22.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Add note about multiple client connections per process","shortMessageHtmlLink":"Add note about multiple client connections per process"}},{"before":"eba1359da19a4d72d4078d1226ddec6c3126ce98","after":"c21ba3446a11c0da2827c960939af3d8f4c806d8","ref":"refs/heads/master","pushedAt":"2024-07-28T02:28:09.000Z","pushType":"push","commitsCount":12,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Deny mmap requests if the process lacks permission","shortMessageHtmlLink":"Deny mmap requests if the process lacks permission"}},{"before":"610c60a7d49b2c9b21544a077f4990eed42bd83c","after":"c21ba3446a11c0da2827c960939af3d8f4c806d8","ref":"refs/heads/access-control","pushedAt":"2024-07-27T02:11:54.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Deny mmap requests if the process lacks permission","shortMessageHtmlLink":"Deny mmap requests if the process lacks permission"}},{"before":"a38e9ea9cf090c1b7ca74c57c6853a034ace247e","after":"610c60a7d49b2c9b21544a077f4990eed42bd83c","ref":"refs/heads/access-control","pushedAt":"2024-07-27T01:41:36.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Fix write lock not being released if an IRQ request is denied","shortMessageHtmlLink":"Fix write lock not being released if an IRQ request is denied"}},{"before":"dfe3b02b8177304a3c990f5f69696279d08c42af","after":"a38e9ea9cf090c1b7ca74c57c6853a034ace247e","ref":"refs/heads/access-control","pushedAt":"2024-07-27T01:04:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Rename devio_region to port_io_region","shortMessageHtmlLink":"Rename devio_region to port_io_region"}},{"before":"bda8b7892ad99447697ef86df82a5f9c8431febb","after":"dfe3b02b8177304a3c990f5f69696279d08c42af","ref":"refs/heads/access-control","pushedAt":"2024-07-27T01:03:10.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Rename devio_region to port_io_region","shortMessageHtmlLink":"Rename devio_region to port_io_region"}},{"before":"ea9652f09dbdcb39afae652162b81ee28fca0dda","after":"bda8b7892ad99447697ef86df82a5f9c8431febb","ref":"refs/heads/access-control","pushedAt":"2024-07-15T15:12:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Deny IRQ subscription requests if the process lacks permission","shortMessageHtmlLink":"Deny IRQ subscription requests if the process lacks permission"}},{"before":"780d49c8cb4f3dde0f63a566fcca18681b1c5c6e","after":"eba1359da19a4d72d4078d1226ddec6c3126ce98","ref":"refs/heads/master","pushedAt":"2024-07-15T15:06:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Migrate port I/O request handling to client_info","shortMessageHtmlLink":"Migrate port I/O request handling to client_info"}},{"before":"900e4db45e49f8ab4397937d1506b311c86aa3ec","after":"780d49c8cb4f3dde0f63a566fcca18681b1c5c6e","ref":"refs/heads/master","pushedAt":"2024-07-15T14:44:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Fix typo","shortMessageHtmlLink":"Fix typo"}},{"before":"6b139b4fb13b71fd64d549bd606f71b08ce953f2","after":"ea9652f09dbdcb39afae652162b81ee28fca0dda","ref":"refs/heads/access-control","pushedAt":"2024-07-12T21:51:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Keep track of the executable path of each client","shortMessageHtmlLink":"Keep track of the executable path of each client"}},{"before":"eff987e3603c3041d83b8efcd8585c8631defc16","after":"6b139b4fb13b71fd64d549bd606f71b08ce953f2","ref":"refs/heads/access-control","pushedAt":"2024-07-12T18:04:31.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Maintain list of permission rules through a file in procfs","shortMessageHtmlLink":"Maintain list of permission rules through a file in procfs"}},{"before":"fab4456db3324bd95bbdde325d4741f44c8cac83","after":"eff987e3603c3041d83b8efcd8585c8631defc16","ref":"refs/heads/access-control","pushedAt":"2024-07-12T09:35:22.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"WIP: aaaa","shortMessageHtmlLink":"WIP: aaaa"}},{"before":"cfde51f6b32b45d53d78bc3488750c6f7a7baa39","after":"900e4db45e49f8ab4397937d1506b311c86aa3ec","ref":"refs/heads/master","pushedAt":"2024-07-12T09:31:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Migrate IRQ subscription handling to client_info\n\nWith this, we can properly handle having multiple clients\nsubscribed to the same IRQ line.","shortMessageHtmlLink":"Migrate IRQ subscription handling to client_info"}},{"before":"b87751200cd65656c07335d36bd528a802f33d42","after":"cfde51f6b32b45d53d78bc3488750c6f7a7baa39","ref":"refs/heads/master","pushedAt":"2024-07-12T09:29:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Migrate IRQ subscription handling to client_info\n\nWith this, we can properly handle having multiple clients\nsubscribed to the same IRQ line.","shortMessageHtmlLink":"Migrate IRQ subscription handling to client_info"}},{"before":"337251748fc4b8b9866d4a12787894b71e0143c4","after":"b87751200cd65656c07335d36bd528a802f33d42","ref":"refs/heads/master","pushedAt":"2024-07-12T07:01:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Unify client removal","shortMessageHtmlLink":"Unify client removal"}},{"before":null,"after":"fab4456db3324bd95bbdde325d4741f44c8cac83","ref":"refs/heads/access-control","pushedAt":"2024-07-12T05:20:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"WIP: aaaa","shortMessageHtmlLink":"WIP: aaaa"}},{"before":"06094e408d2559e7c075db4998225c7bd4b85cac","after":"337251748fc4b8b9866d4a12787894b71e0143c4","ref":"refs/heads/master","pushedAt":"2024-07-11T03:43:37.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Clean up resources on process exit using a kprobe","shortMessageHtmlLink":"Clean up resources on process exit using a kprobe"}},{"before":"db3d13ab820494c3cda45ad6c143bcf8ea1902d1","after":"06094e408d2559e7c075db4998225c7bd4b85cac","ref":"refs/heads/master","pushedAt":"2024-07-04T01:41:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Fix error message","shortMessageHtmlLink":"Fix error message"}},{"before":"b261f6ee0e434da8a6b0708f2cc04e5fae939aed","after":"db3d13ab820494c3cda45ad6c143bcf8ea1902d1","ref":"refs/heads/master","pushedAt":"2024-07-04T01:41:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Remove echo command\n\nIt was just used for testing communication between the kernel module and\nuser space.","shortMessageHtmlLink":"Remove echo command"}},{"before":null,"after":"18989d3ba31f8e27ecf9a546036cab9bd253167f","ref":"refs/heads/mmap-genl-request","pushedAt":"2024-06-27T15:04:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"WIP: use netlink request for mmap","shortMessageHtmlLink":"WIP: use netlink request for mmap"}},{"before":null,"after":"b69eed37a079895f4dbafc508f2db285bab15ed8","ref":"refs/heads/mmap-security","pushedAt":"2024-06-27T15:03:29.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"WIP: verify mmap requests","shortMessageHtmlLink":"WIP: verify mmap requests"}},{"before":null,"after":"ce7ef931ed15e70ed70e5b57ae8af8fccff5b390","ref":"refs/heads/timer-flags-test","pushedAt":"2024-06-27T15:00:03.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Add IRQF_TIMER, IRQF_IRQPOLL and IRQF_NOBALANCING flags to IRQ 0\n\nThis mirrors the flags the Linux kernel uses for the i8254 timer.","shortMessageHtmlLink":"Add IRQF_TIMER, IRQF_IRQPOLL and IRQF_NOBALANCING flags to IRQ 0"}},{"before":"55d368180cbfa789d101f3bcbb52978fa801bd80","after":"b261f6ee0e434da8a6b0708f2cc04e5fae939aed","ref":"refs/heads/master","pushedAt":"2024-06-27T14:49:22.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Implement mmap","shortMessageHtmlLink":"Implement mmap"}},{"before":"92e38b8f1771eba5ac7a9e5aa6aa6e1b82efc941","after":"b261f6ee0e434da8a6b0708f2cc04e5fae939aed","ref":"refs/heads/mmap","pushedAt":"2024-06-26T20:24:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Implement mmap","shortMessageHtmlLink":"Implement mmap"}},{"before":"02fd6f3f23799e3a9bda324a0a052d75c8b1d627","after":"55d368180cbfa789d101f3bcbb52978fa801bd80","ref":"refs/heads/master","pushedAt":"2024-06-26T19:33:29.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Document umdp_strerror","shortMessageHtmlLink":"Document umdp_strerror"}},{"before":"c78bc58c080217884cd63e77a356fadb13539782","after":"02fd6f3f23799e3a9bda324a0a052d75c8b1d627","ref":"refs/heads/master","pushedAt":"2024-06-26T19:33:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Decument umdp_strerror","shortMessageHtmlLink":"Decument umdp_strerror"}},{"before":null,"after":"92e38b8f1771eba5ac7a9e5aa6aa6e1b82efc941","ref":"refs/heads/mmap","pushedAt":"2024-06-22T10:02:37.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Create character device for memory operations","shortMessageHtmlLink":"Create character device for memory operations"}},{"before":"b9ce8417e8cd54dec07b56dbfec784594b342a43","after":"c78bc58c080217884cd63e77a356fadb13539782","ref":"refs/heads/master","pushedAt":"2024-06-14T18:49:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MonterraByte","name":"Joaquim Monteiro","path":"/MonterraByte","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/30274651?s=80&v=4"},"commit":{"message":"Enable LTO and build both library types by default","shortMessageHtmlLink":"Enable LTO and build both library types by default"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0yMFQxNDo0NjowMi4wMDAwMDBazwAAAASfOREk","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0yMFQxNDo0NjowMi4wMDAwMDBazwAAAASfOREk","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNi0xNFQxODo0OTo0OS4wMDAwMDBazwAAAARlwrZl"}},"title":"Activity ยท MonterraByte/linux-usermode-driver-platform"}