Article View: be.comp.programming
Article #650Re: kmalloc
From: Philip Paeps
Date: Tue, 25 Jul 2006 17:02
Date: Tue, 25 Jul 2006 17:02
39 lines
2300 bytes
2300 bytes
Loes Jansen <loes.jansen@student.kuleuven.be> wrote:
> Ik heb hier verschillende drivers die kmalloc oproepen en ik zou graag weten
> wat er gebeurt als de volgende flags worden mee gegeven:
>
> 1. kmalloc(size, SLAB_KERNEL)
Deze is hetzelfde als GFP_KERNEL maar gebruikt de slab allocator in plaats van
de normale allocator en zou dus enkel mogen gebruikt worden als je memory
pools aanmaakt (hoewel het eigenlijk niets uitmaakt omdat de slab allocator
intern toch gewoon GFP gebruikt).
> 2. kmalloc(size, GFP_KERNEL)
Dit is de meest gebruikelijke manier van werken. De kernel alloceert memory
door __get_free_pages() te doen "in naam van" het proces dat in de kernel
terechtgekomen is.
> Is er een groot verschil tussen deze twee?
Nee. Kijk even in <linux/slab.h> ;-)
> En wat als er er niets wordt mee gegeven:
>
> 3. kmalloc(size, 0)
Dan zondig je tegen de "No Magic Numbers" regel. Als je 0 wil, gebruik de
constante die 0 betekent. Je zult wel in de headers moeten graven om dat uit
te zoeken. Veel eenvoudiger om even na te denken over wat voor policy je
nodig hebt en die expliciet te gebruiken. :-)
- Philip
--
Philip Paeps Please don't email any replies
philip@paeps.cx I follow the newsgroup.
hundred-and-one symptoms of being an internet addict:
38. You wake up at 3 a.m. to go to the bathroom and stop and check your e-mail
on the way back to bed.
Technical Details
Message-ID:
<slrneccjlg.127.philip+usenet@fasolt.home.paeps.cx>Path:
arc1-ca.pugleaf.net!g2news2.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mailReferences:
<1153845560.336037@seven.kulnet.kuleuven.ac.be>Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,765b773271b114bc X-Google-Attributes: gidfcea4,public X-Google-Language: DUTCH,ASCII-7-bit Path: arc1-ca.pugleaf.net!g2news2.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Philip Paeps <philip+usenet@paeps.cx> Newsgroups: be.comp.programming Subject: Re: kmalloc Date: 25 Jul 2006 17:02:59 GMT Organization: Happily Disorganized Lines: 39 Message-ID: <slrneccjlg.127.philip+usenet@fasolt.home.paeps.cx> References: <1153845560.336037@seven.kulnet.kuleuven.ac.be> X-Trace: individual.net lhqGDz+jCF3cr+Qj9uMJBwDNtXaAGGSjj73FuIsMdSvvzND3Qh X-PGP-Fingerprint: FA74 3C27 91A6 79D5 F6D3 FC53 BF4B D0E6 049D B879 X-Date-in-Rome: ante diem VIII Kalendas Augustas MMDCCLIX ab Urbe Condida X-Phase-of-Moon: The Moon is New User-Agent: slrn/0.9.8.1 (FreeBSD)