{"action":"created","issue":{"url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1313","labels_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1313/labels{/name}","comments_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1313/comments","events_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1313/events","html_url":"https://github.com/QubesOS/qubes-issues/issues/1313","id":110746424,"number":1313,"title":"Limit dom0 memory to 4GB","user":{"login":"marmarek","id":726704,"avatar_url":"https://avatars.githubusercontent.com/u/726704?v=3","gravatar_id":"","url":"https://api.github.com/users/marmarek","html_url":"https://github.com/marmarek","followers_url":"https://api.github.com/users/marmarek/followers","following_url":"https://api.github.com/users/marmarek/following{/other_user}","gists_url":"https://api.github.com/users/marmarek/gists{/gist_id}","starred_url":"https://api.github.com/users/marmarek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marmarek/subscriptions","organizations_url":"https://api.github.com/users/marmarek/orgs","repos_url":"https://api.github.com/users/marmarek/repos","events_url":"https://api.github.com/users/marmarek/events{/privacy}","received_events_url":"https://api.github.com/users/marmarek/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/QubesOS/qubes-issues/labels/C:%20core","name":"C: core","color":"cccccc"},{"url":"https://api.github.com/repos/QubesOS/qubes-issues/labels/C:%20installer","name":"C: installer","color":"cccccc"},{"url":"https://api.github.com/repos/QubesOS/qubes-issues/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/QubesOS/qubes-issues/labels/P:%20minor","name":"P: minor","color":"fef2c0"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/QubesOS/qubes-issues/milestones/16","html_url":"https://github.com/QubesOS/qubes-issues/milestones/Release%203.1","labels_url":"https://api.github.com/repos/QubesOS/qubes-issues/milestones/16/labels","id":1083578,"number":16,"title":"Release 3.1","description":"","creator":{"login":"marmarek","id":726704,"avatar_url":"https://avatars.githubusercontent.com/u/726704?v=3","gravatar_id":"","url":"https://api.github.com/users/marmarek","html_url":"https://github.com/marmarek","followers_url":"https://api.github.com/users/marmarek/followers","following_url":"https://api.github.com/users/marmarek/following{/other_user}","gists_url":"https://api.github.com/users/marmarek/gists{/gist_id}","starred_url":"https://api.github.com/users/marmarek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marmarek/subscriptions","organizations_url":"https://api.github.com/users/marmarek/orgs","repos_url":"https://api.github.com/users/marmarek/repos","events_url":"https://api.github.com/users/marmarek/events{/privacy}","received_events_url":"https://api.github.com/users/marmarek/received_events","type":"User","site_admin":false},"open_issues":109,"closed_issues":14,"state":"open","created_at":"2015-04-25T20:30:27Z","updated_at":"2015-10-10T01:41:45Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-10-09T22:31:10Z","updated_at":"2015-10-10T21:30:07Z","closed_at":null,"body":"Apparently Linux kernel reserves some internal memory structures based on maximum memory, not the actual one. This is waste of resources, especially on big systems, because normally most of memory is assigned to AppVMs.\nThis is also along the lines of [Xen best practices](http://wiki.xen.org/wiki/Xen_Best_Practices).\n\nRelated to #1136"},"comment":{"url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/comments/147127237","html_url":"https://github.com/QubesOS/qubes-issues/issues/1313#issuecomment-147127237","issue_url":"https://api.github.com/repos/QubesOS/qubes-issues/issues/1313","id":147127237,"user":{"login":"qubesuser","id":13874043,"avatar_url":"https://avatars.githubusercontent.com/u/13874043?v=3","gravatar_id":"","url":"https://api.github.com/users/qubesuser","html_url":"https://github.com/qubesuser","followers_url":"https://api.github.com/users/qubesuser/followers","following_url":"https://api.github.com/users/qubesuser/following{/other_user}","gists_url":"https://api.github.com/users/qubesuser/gists{/gist_id}","starred_url":"https://api.github.com/users/qubesuser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/qubesuser/subscriptions","organizations_url":"https://api.github.com/users/qubesuser/orgs","repos_url":"https://api.github.com/users/qubesuser/repos","events_url":"https://api.github.com/users/qubesuser/events{/privacy}","received_events_url":"https://api.github.com/users/qubesuser/received_events","type":"User","site_admin":false},"created_at":"2015-10-10T21:30:07Z","updated_at":"2015-10-10T21:30:07Z","body":"Sounds good, although in addition to 4GB, 8GB and 16GB also seem reasonable candidates for the value to use.\r\n\r\nLonger term, it would be nice to get memory hotplugging working for both dom0 and VMs in a way that results in not wasting memory for page structures for unassigned RAM and ballooning instantly, and then maybe remove the dom0 limit again, but I'm not sure if that's feasible.\r\n"}}