[STAGING] slicoss - use kzalloc - Kernel

This is a discussion on [STAGING] slicoss - use kzalloc - Kernel ; This patch uses kzalloc() where applicable. Signed-off-by: Lior Dotan --- b/drivers/staging/slicoss/slicoss.c 2008-11-04 11:53:12.878116772 +0200 +++ a/drivers/staging/slicoss/slicoss.c 2008-11-04 12:08:40.800644774 +0200 @@ -2673,7 +2673,7 @@ static int slic_card_init(struct sliccar #if SLIC_DUMP_ENABLED if (!card->dumpbuffer) { - card->dumpbuffer = kmalloc(DUMP_PAGE_SIZE, GFP_ATOMIC); + card->dumpbuffer = ...

+ Reply to Thread
Results 1 to 5 of 5

Thread: [STAGING] slicoss - use kzalloc

  1. [STAGING] slicoss - use kzalloc

    This patch uses kzalloc() where applicable.

    Signed-off-by: Lior Dotan

    --- b/drivers/staging/slicoss/slicoss.c 2008-11-04 11:53:12.878116772 +0200
    +++ a/drivers/staging/slicoss/slicoss.c 2008-11-04 12:08:40.800644774 +0200
    @@ -2673,7 +2673,7 @@ static int slic_card_init(struct sliccar

    #if SLIC_DUMP_ENABLED
    if (!card->dumpbuffer) {
    - card->dumpbuffer = kmalloc(DUMP_PAGE_SIZE, GFP_ATOMIC);
    + card->dumpbuffer = kzalloc(DUMP_PAGE_SIZE, GFP_ATOMIC);

    ASSERT(card->dumpbuffer);
    if (card->dumpbuffer == NULL)
    @@ -2683,7 +2683,6 @@ static int slic_card_init(struct sliccar
    * Smear the shared memory structure and then obtain
    * the PHYSICAL address of this structure
    */
    - memset(card->dumpbuffer, 0, DUMP_PAGE_SIZE);
    card->dumpbuffer_phys = virt_to_bus(card->dumpbuffer);
    card->dumpbuffer_physh = SLIC_GET_ADDR_HIGH(card->dumpbuffer_phys);
    card->dumpbuffer_physl = SLIC_GET_ADDR_LOW(card->dumpbuffer_phys);
    @@ -2692,7 +2691,7 @@ static int slic_card_init(struct sliccar
    * Allocate COMMAND BUFFER
    */
    if (!card->cmdbuffer) {
    - card->cmdbuffer = kmalloc(sizeof(struct dump_cmd), GFP_ATOMIC);
    + card->cmdbuffer = kzalloc(sizeof(struct dump_cmd), GFP_ATOMIC);

    ASSERT(card->cmdbuffer);
    if (card->cmdbuffer == NULL)
    @@ -2702,7 +2701,6 @@ static int slic_card_init(struct sliccar
    * Smear the shared memory structure and then obtain
    * the PHYSICAL address of this structure
    */
    - memset(card->cmdbuffer, 0, sizeof(struct dump_cmd));
    card->cmdbuffer_phys = virt_to_bus(card->cmdbuffer);
    card->cmdbuffer_physh = SLIC_GET_ADDR_HIGH(card->cmdbuffer_phys);
    card->cmdbuffer_physl = SLIC_GET_ADDR_LOW(card->cmdbuffer_phys);
    @@ -2833,9 +2831,8 @@ static u32 slic_card_locate(struct adapt
    }
    if (!physcard) {
    /* no structure allocated for this physical card yet */
    - physcard = kmalloc(sizeof(struct physcard *), GFP_ATOMIC);
    + physcard = kzalloc(sizeof(struct physcard *), GFP_ATOMIC);
    ASSERT(physcard);
    - memset(physcard, 0, sizeof(struct physcard *));

    DBG_MSG
    ("\n%s Allocate a PHYSICALcard:\n PHYSICAL_Card[%p]\n\


  2. Re: [STAGING] slicoss - use kzalloc

    On 11/04/2008 05:27 PM, Lior Dotan wrote:
    > This patch uses kzalloc() where applicable.
    >
    > Signed-off-by: Lior Dotan


    /drivers/staging/slicoss/slicoss.c
    =======================================
    --- b/drivers/staging/slicoss/slicoss.c 2008-11-04 11:53:12.878116772 +0200
    +++ a/drivers/staging/slicoss/slicoss.c 2008-11-04 12:08:40.800644774 +0200
    @@ -2673,8 +2673,8 @@
    static·int·slic_card_init(struct·sliccar
    #if·SLIC_DUMP_ENABLED
    » if·(!card->dumpbuffer)·{
    -» » card->dumpbuffer·=·kmalloc(DUMP_PAGE_SIZE,·GFP_ATOMIC );
    +» » card->dumpbuffer·=·kzalloc(DUMP_PAGE_SIZE,·GFP_ATOMIC );
    » » ASSERT(card->dumpbuffer);
    » » if·(card->dumpbuffer·==·NULL)
    @@ -2683,8 +2683,7 @@
    static·int·slic_card_init(struct·sliccar
    » ·*··Smear·the·shared·memory·structure·and then·obtain
    » ·*··the·PHYSICAL·address·of·this·structure
    » ·*/
    -» memset(card->dumpbuffer,·0,·DUMP_PAGE_SIZE);


    It's wrong, the function in called multiple times, the memset was called every
    time, now it would be called only for the first time.
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  3. Re: [STAGING] slicoss - use kzalloc

    -------- Original Message --------
    Subject: Re: [STAGING] slicoss - use kzalloc
    From: Jiri Slaby
    To: Lior Dotan
    CC: gregkh@suse.de, linux-kernel@vger.kernel.org, charrer@alacritech.com
    Date: 11/05/2008 12:01 AM

    > On 11/04/2008 05:27 PM, Lior Dotan wrote:
    >> This patch uses kzalloc() where applicable.
    >>
    >> Signed-off-by: Lior Dotan

    >
    > /drivers/staging/slicoss/slicoss.c
    > =======================================
    > --- b/drivers/staging/slicoss/slicoss.c 2008-11-04 11:53:12.878116772 +0200
    > +++ a/drivers/staging/slicoss/slicoss.c 2008-11-04 12:08:40.800644774 +0200
    > @@ -2673,8 +2673,8 @@
    > static·int·slic_card_init(struct·sliccar
    > #if·SLIC_DUMP_ENABLED
    > » if·(!card->dumpbuffer)·{
    > -» » card->dumpbuffer·=·kmalloc(DUMP_PAGE_SIZE,·GFP_ATOMIC );
    > +» » card->dumpbuffer·=·kzalloc(DUMP_PAGE_SIZE,·GFP_ATOMIC );
    > » » ASSERT(card->dumpbuffer);
    > » » if·(card->dumpbuffer·==·NULL)
    > @@ -2683,8 +2683,7 @@
    > static·int·slic_card_init(struct·sliccar
    > » ·*··Smear·the·shared·memory·structure·and then·obtain
    > » ·*··the·PHYSICAL·address·of·this·structure
    > » ·*/
    > -» memset(card->dumpbuffer,·0,·DUMP_PAGE_SIZE);
    >
    >
    > It's wrong, the function in called multiple times, the memset was called every
    > time, now it would be called only for the first time.



    You are right, thanks. Here's a fixed version.


    This patch uses kzalloc() where really applicable.

    Signed-off-by: Lior Dotan

    --- b/drivers/staging/slicoss/slicoss.c 2008-11-05 11:21:13.697789873 +0200
    +++ a/drivers/staging/slicoss/slicoss.c 2008-11-05 11:24:00.768399196 +0200
    @@ -2833,9 +2833,8 @@ static u32 slic_card_locate(struct adapt
    }
    if (!physcard) {
    /* no structure allocated for this physical card yet */
    - physcard = kmalloc(sizeof(struct physcard *), GFP_ATOMIC);
    + physcard = kzalloc(sizeof(struct physcard *), GFP_ATOMIC);
    ASSERT(physcard);
    - memset(physcard, 0, sizeof(struct physcard *));

    DBG_MSG
    ("\n%s Allocate a PHYSICALcard:\n PHYSICAL_Card[%p]\n\

  4. Re: [STAGING] slicoss - use kzalloc

    On 11/05/2008 10:27 AM, Lior Dotan wrote:
    > This patch uses kzalloc() where really applicable.


    ack this, but there is another problem.

    sizeof(struct physcard *) is wrong size for that allocation, care to send a fix
    for this (and revice the rest of allocations)? I wonder how this could work with
    SLAB_DEBUG on, maybe nobody tried...
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  5. Re: [STAGING] slicoss - use kzalloc

    On 11/05/2008 10:52 AM, Lior Dotan wrote:
    > Fix sizeof to use the right type


    Well, next step might be to investigate which allocs might be GFP_KERNEL instead
    of GFP_ATOMIC if you want to play with that .
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

+ Reply to Thread