{"action":"opened","issue":{"url":"https://api.github.com/repos/uebayasi/openbsd-vmx/issues/3","labels_url":"https://api.github.com/repos/uebayasi/openbsd-vmx/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/uebayasi/openbsd-vmx/issues/3/comments","events_url":"https://api.github.com/repos/uebayasi/openbsd-vmx/issues/3/events","html_url":"https://github.com/uebayasi/openbsd-vmx/issues/3","id":116056105,"number":3,"title":"(Off-topic) Record page-frame-number in mbuf to optimize bus_dmamap_load_mbuf(9)","user":{"login":"uebayasi","id":185983,"avatar_url":"https://avatars.githubusercontent.com/u/185983?v=3","gravatar_id":"","url":"https://api.github.com/users/uebayasi","html_url":"https://github.com/uebayasi","followers_url":"https://api.github.com/users/uebayasi/followers","following_url":"https://api.github.com/users/uebayasi/following{/other_user}","gists_url":"https://api.github.com/users/uebayasi/gists{/gist_id}","starred_url":"https://api.github.com/users/uebayasi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uebayasi/subscriptions","organizations_url":"https://api.github.com/users/uebayasi/orgs","repos_url":"https://api.github.com/users/uebayasi/repos","events_url":"https://api.github.com/users/uebayasi/events{/privacy}","received_events_url":"https://api.github.com/users/uebayasi/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-11-10T07:54:07Z","updated_at":"2015-11-10T07:54:07Z","closed_at":null,"body":"mbufs are basically backed by pool(9) pages, whose physical address (or struct vm_page) is at hand when they are allocated.  In the current design, mbuf has only virtual address.  When mbufs are to be used for DMA, their physical addresses are looked up via pmap_extract(9), which is rather wasteful (on non-PMAP_DIRECT pmaps).  Also rewrite bus_dmamap_load_mbuf(9) to not use generic bus_dmamap_load_buffer(9)."}}