{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":351761558,"defaultBranch":"main","name":"dxgmx","ownerLogin":"oda404","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2021-03-26T11:37:35.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/57302612?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1616758656.1242208","currentOid":""},"activityList":{"items":[{"before":"fdd709b0038d6395a2a083f680791dc9f8c6a7d9","after":"dbaa7bd9ecdde1eb2f01b2e7344a071ca6b82beb","ref":"refs/heads/main","pushedAt":"2024-01-16T21:44:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"build: Cleanup root Makefile and add help target.","shortMessageHtmlLink":"build: Cleanup root Makefile and add help target."}},{"before":"9d6f1ba6cea6a786863ef54f023b6b08a7a1f7b1","after":"fdd709b0038d6395a2a083f680791dc9f8c6a7d9","ref":"refs/heads/main","pushedAt":"2024-01-14T15:23:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"kernel: Preparations for 64bit port.\n\n32bit still works and all 64bit modifications are untested.","shortMessageHtmlLink":"kernel: Preparations for 64bit port."}},{"before":"b14bb6d57b22b402b4914133d5bdccec2adb40ea","after":"9d6f1ba6cea6a786863ef54f023b6b08a7a1f7b1","ref":"refs/heads/main","pushedAt":"2023-11-15T20:06:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"procm: Spawn /bin/init instead of /bin/main.","shortMessageHtmlLink":"procm: Spawn /bin/init instead of /bin/main."}},{"before":"8aada6f7b7e45b333a3b24383b89efd337f861cd","after":"b14bb6d57b22b402b4914133d5bdccec2adb40ea","ref":"refs/heads/main","pushedAt":"2023-11-14T15:54:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"kernel: Remove scripts that should be part of the OS.","shortMessageHtmlLink":"kernel: Remove scripts that should be part of the OS."}},{"before":"472dab893a09bb7c3a5dd20e95771c032e3b9316","after":"8aada6f7b7e45b333a3b24383b89efd337f861cd","ref":"refs/heads/main","pushedAt":"2023-11-10T16:28:12.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"ps2kbd: Supress warnings.","shortMessageHtmlLink":"ps2kbd: Supress warnings."}},{"before":"594c4367366ab9db81e68a6fac895a0a3cf053df","after":"472dab893a09bb7c3a5dd20e95771c032e3b9316","ref":"refs/heads/main","pushedAt":"2023-11-08T14:56:03.000Z","pushType":"push","commitsCount":12,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"kinit_stage2: Color banner.","shortMessageHtmlLink":"kinit_stage2: Color banner."}},{"before":"d8e3cb201578068d4ebc9e458c30746b1f24e088","after":"594c4367366ab9db81e68a6fac895a0a3cf053df","ref":"refs/heads/main","pushedAt":"2023-10-26T18:37:40.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"x86-taskswitch: Add task switching code for x86.","shortMessageHtmlLink":"x86-taskswitch: Add task switching code for x86."}},{"before":"6c257e6d2690f405c190fe3c9762733685464896","after":"d8e3cb201578068d4ebc9e458c30746b1f24e088","ref":"refs/heads/main","pushedAt":"2023-10-23T21:06:35.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"proc: Remove kstack check since we don't have execve anymore.","shortMessageHtmlLink":"proc: Remove kstack check since we don't have execve anymore."}},{"before":"547747819e160086f1b7fd58a0afeb7fee236692","after":"6c257e6d2690f405c190fe3c9762733685464896","ref":"refs/heads/main","pushedAt":"2023-10-22T21:20:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"syscalls: Store syscall definitions in json format.\n\nInstead of the old weird tab-based format which didn't really play nice\nwith vscode.\n\nAlso remove sys_execve.","shortMessageHtmlLink":"syscalls: Store syscall definitions in json format."}},{"before":"a14a5b8f1e7f2338d99c4d0533a6059ae9625d85","after":"547747819e160086f1b7fd58a0afeb7fee236692","ref":"refs/heads/main","pushedAt":"2023-10-22T19:23:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"x86-boot: Modularize multiboot support.","shortMessageHtmlLink":"x86-boot: Modularize multiboot support."}},{"before":"19d07e45d0c7ec851fc9d98456dac6e053582beb","after":"a14a5b8f1e7f2338d99c4d0533a6059ae9625d85","ref":"refs/heads/main","pushedAt":"2023-10-21T21:39:42.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"sched->procm: Move the sched subsystem into procm.\n\nAlso add scheduler drivers instead of having one single scheduling\nalgorithm.","shortMessageHtmlLink":"sched->procm: Move the sched subsystem into procm."}},{"before":"2cdc58dbec6092c98883c7d84194a7c23bf50ef0","after":"19d07e45d0c7ec851fc9d98456dac6e053582beb","ref":"refs/heads/main","pushedAt":"2023-10-21T00:11:24.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"x86-pagefault: Fix small bug.\n\nThe kernel would confuse an unmapped kheap page fault that happened from\n.useraccess with an useraccess fault.","shortMessageHtmlLink":"x86-pagefault: Fix small bug."}},{"before":"b2cf2d989237e3ccc11b6d1b3989292e269d0494","after":"2cdc58dbec6092c98883c7d84194a7c23bf50ef0","ref":"refs/heads/main","pushedAt":"2023-10-19T21:46:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"crypto: Create crypto/hashing subsystem.\n\nThe hashing subsystem is a common api that modules can used to register\ntheir hashing functions.","shortMessageHtmlLink":"crypto: Create crypto/hashing subsystem."}},{"before":"b83cd9f148df9d143178a843f0e72ae3ea84678d","after":"b2cf2d989237e3ccc11b6d1b3989292e269d0494","ref":"refs/heads/main","pushedAt":"2023-10-18T20:15:30.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"config: Better segmentation of drivers + improve config engine.\n\nAlso the draft driver ps2kbd is in there.","shortMessageHtmlLink":"config: Better segmentation of drivers + improve config engine."}},{"before":"75da14cb68ec93f6406c2e03c58ea3f43d9c8c45","after":"b83cd9f148df9d143178a843f0e72ae3ea84678d","ref":"refs/heads/main","pushedAt":"2023-10-08T23:47:29.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"config: Generate kconfig.h based on config.mk.","shortMessageHtmlLink":"config: Generate kconfig.h based on config.mk."}},{"before":"3c1bc25efcf7d0e4d96e810076aa5abe472cc335","after":"75da14cb68ec93f6406c2e03c58ea3f43d9c8c45","ref":"refs/heads/main","pushedAt":"2023-10-07T22:49:43.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"build_system: Rename sub makefiles to sub.mk.\n\nAlso, when building tools when can let their sub.mk define their build\nrules instead of having a global one hardcoded to c++.","shortMessageHtmlLink":"build_system: Rename sub makefiles to sub.mk."}},{"before":"babed46bae6f798c9961feef79185f9f7d019c23","after":"3c1bc25efcf7d0e4d96e810076aa5abe472cc335","ref":"refs/heads/main","pushedAt":"2023-09-28T21:13:19.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"klog: Cleanup + remove kprintf.","shortMessageHtmlLink":"klog: Cleanup + remove kprintf."}},{"before":"66362746509e49a3053b259ee39785f8a4444959","after":"babed46bae6f798c9961feef79185f9f7d019c23","ref":"refs/heads/main","pushedAt":"2023-09-27T20:24:50.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"kinit_stage2: Spawn kernel proc right after the mm comes online.","shortMessageHtmlLink":"kinit_stage2: Spawn kernel proc right after the mm comes online."}},{"before":"fd2e4f4b90a751bb38d5eabc992a52f87f40cd93","after":"66362746509e49a3053b259ee39785f8a4444959","ref":"refs/heads/main","pushedAt":"2023-09-23T21:28:12.000Z","pushType":"push","commitsCount":8,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"libc: Add mman. Only has mmap.","shortMessageHtmlLink":"libc: Add mman. Only has mmap."}},{"before":"84f991bb937778fe9c7a148a3c04d87b6dc91834","after":"fd2e4f4b90a751bb38d5eabc992a52f87f40cd93","ref":"refs/heads/main","pushedAt":"2023-09-02T16:43:09.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"ps2io: Add driver for detecting ps2 devices.\n\nRight now it only handles keyboards plugged into ps2 port number 1. It\nalso doesn't handle resend responses.","shortMessageHtmlLink":"ps2io: Add driver for detecting ps2 devices."}},{"before":"780a384a251cdcbe2968ee0f56c725edb70350d2","after":"84f991bb937778fe9c7a148a3c04d87b6dc91834","ref":"refs/heads/main","pushedAt":"2023-08-17T19:28:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"klog: Add CONFIG_KLOG_COLOR to use ANSI color codes.\n\nIf enabled klog inserts ANSI colors codes specific to each log level.\n\nFor sinks of type KOUTPUT_RAW there is no extra work needed. But for\nsinks of type KOUTPUT_TERMINAL we need to do some ANSI code parsing\nbefore setting the sink's fg/bg color. Right now the code to do that is\nvery primitive and made only to work witht the colors we use.","shortMessageHtmlLink":"klog: Add CONFIG_KLOG_COLOR to use ANSI color codes."}},{"before":"e1749aa5ce23e7ec749a1e7bb9b3809a3e1d115f","after":"780a384a251cdcbe2968ee0f56c725edb70350d2","ref":"refs/heads/main","pushedAt":"2023-08-17T15:57:55.000Z","pushType":"push","commitsCount":10,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"falloc: Cache falloc_one_use() state.\n\nUse some variables to cache the last known location of free pageframes.\nThis massively improves the performance of the allocator, which is seen\nwhen allocating large numbers of frames for userspace binaries.\n\nThis change is a hack and doesn't change the fact that falloc is a piece\nof shit, mainly because of the fact that the pageframe pool is\nstatically allocated, and while this works on 32bit, on 64bit it won't.\n\nA rework should be coming soon.","shortMessageHtmlLink":"falloc: Cache falloc_one_use() state."}},{"before":"16906d72713baea3f06de7db399cfea510bf7ae3","after":"e1749aa5ce23e7ec749a1e7bb9b3809a3e1d115f","ref":"refs/heads/main","pushedAt":"2023-08-16T18:46:47.000Z","pushType":"push","commitsCount":11,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"userspace: Export errno.h as a userspace API.","shortMessageHtmlLink":"userspace: Export errno.h as a userspace API."}},{"before":"f7852907ed815541dbd82466c36ac592f7c1e5c0","after":"16906d72713baea3f06de7db399cfea510bf7ae3","ref":"refs/heads/main","pushedAt":"2023-08-15T06:44:21.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"fb: Export user API for ioctl.","shortMessageHtmlLink":"fb: Export user API for ioctl."}},{"before":"dc4336b5eae555b1d438a0258c278e0aa9d7a359","after":"f7852907ed815541dbd82466c36ac592f7c1e5c0","ref":"refs/heads/main","pushedAt":"2023-08-06T21:17:44.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"scripts -> tools: Move the contents of scripts/ into tools/.","shortMessageHtmlLink":"scripts -> tools: Move the contents of scripts/ into tools/."}},{"before":"7cbf9927ba8175f13b92f1e4479710683e109d09","after":"dc4336b5eae555b1d438a0258c278e0aa9d7a359","ref":"refs/heads/main","pushedAt":"2023-08-05T20:15:04.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"attrs: Remove _SAFE_USERPTR.","shortMessageHtmlLink":"attrs: Remove _SAFE_USERPTR."}},{"before":"6cb7eb912755bd573f201bbe0ce29184ff8f8036","after":"7cbf9927ba8175f13b92f1e4479710683e109d09","ref":"refs/heads/main","pushedAt":"2023-08-04T23:16:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"syscalls: Refactor syscalls.\n\nCreated an API for defining syscalls.\n\nWe now also expose relevant syscall info to userspace like the syscall\nnumbers and data types.\n\nWhat's left to do is create an intermediary file format for defining\nsyscall numbers, and respect that order when defining them in C\n(right now they are hardcoded to work).\n\nAnother thing that may be kind of cool is to let drivers define their\nown syscalls for whatever internal use they might have. I have no clue\nif this is a good idea though, we'll see.","shortMessageHtmlLink":"syscalls: Refactor syscalls."}},{"before":"1b2eaa1bc18b5784661135411bd097f101d40c64","after":"6cb7eb912755bd573f201bbe0ce29184ff8f8036","ref":"refs/heads/main","pushedAt":"2023-08-03T23:42:12.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"user: Add user_copy_to().\n\nuser_copy_to() is used to copy data from kernel space to userspace in a\nsafe and predictable way. The way it works is inspired by linux's\nimplementation of this function's equivalent, after trying a bunch of\nalternatives which either failed miserably, or just seemed *weird*.\n\nuser_copy_to sits in it's own elf section. When invoked it starts\ncopying data. If a fault occurs while copying the fault handler looks at\nthe faulting eip and if it falls inside the user_copy_to region it\nreturns control to a \"function\" that cleans up the stack and returns\n-EFAULT to the caller.\n\nNOTES:\n\nRight now the function doesn't really care if the fault is because of\nthe kernel src buffer or the userspace dest buffer. (Should we care?)\n\nUpon a fault the page fault handler immediately jumps to the clean-up\nfunction. In the future we might want to do some stuff before resorting\nto that.\n\nThis whole thing was implemented after reading this stackoverflow\nanswear:\nhttps://stackoverflow.com/questions/8265657/how-does-copy-from-user-from-the-linux-kernel-work-internally","shortMessageHtmlLink":"user: Add user_copy_to()."}},{"before":"710d79cd159c1fdfcb86978c37c398252e7bca49","after":"1b2eaa1bc18b5784661135411bd097f101d40c64","ref":"refs/heads/main","pushedAt":"2023-08-01T11:45:57.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"vfs: Cleanup.","shortMessageHtmlLink":"vfs: Cleanup."}},{"before":"f230635e46cafba3b8b103ce87bd99ee8c9dedcd","after":"710d79cd159c1fdfcb86978c37c398252e7bca49","ref":"refs/heads/main","pushedAt":"2023-07-29T20:59:20.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"oda404","name":"Alexandru Olaru","path":"/oda404","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57302612?s=80&v=4"},"commit":{"message":"init: Remove kinit_stage3.\n\nAfter some thinking it seems like kinit_stage3 is an overcomplicated\nsolution to a relatively simple problem. We now spawn a kernel\n\"acting\" process that never actually runs but can be used to open file\ndescriptors and stuff like that.","shortMessageHtmlLink":"init: Remove kinit_stage3."}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAD4W8iUgA","startCursor":null,"endCursor":null}},"title":"Activity ยท oda404/dxgmx"}