struct skt_dev_info *sinfo;
        int ret, i;
 
-       sinfo = kmalloc(sizeof(struct skt_dev_info), GFP_KERNEL);
+       sinfo = kzalloc(sizeof(struct skt_dev_info), GFP_KERNEL);
        if (!sinfo) {
                ret = -ENOMEM;
                goto out;
        }
 
-       memset(sinfo, 0, sizeof(struct skt_dev_info));
        sinfo->nskt = nr;
 
        /*
 
                if (fw->size >= CISTPL_MAX_CIS_SIZE)
                        goto release;
 
-               cis = kmalloc(sizeof(cisdump_t), GFP_KERNEL);
+               cis = kzalloc(sizeof(cisdump_t), GFP_KERNEL);
                if (!cis)
                        goto release;
 
-               memset(cis, 0, sizeof(cisdump_t));
-
                cis->Length = fw->size + 1;
                memcpy(cis->Data, fw->data, fw->size);
 
                        s->functions = mfc.nfn;
                else
                        s->functions = 1;
-               s->config = kmalloc(sizeof(config_t) * s->functions,
+               s->config = kzalloc(sizeof(config_t) * s->functions,
                                    GFP_KERNEL);
                if (!s->config) {
                        ret = -ENOMEM;
                        goto put_module;
                }
-               memset(s->config, 0, sizeof(config_t) * s->functions);
        }
 
        ret = p_drv->probe(p_dev);
        if (s->device_count == 2)
                goto err_put;
 
-       p_dev = kmalloc(sizeof(struct pcmcia_device), GFP_KERNEL);
+       p_dev = kzalloc(sizeof(struct pcmcia_device), GFP_KERNEL);
        if (!p_dev)
                goto err_put;
-       memset(p_dev, 0, sizeof(struct pcmcia_device));
 
        p_dev->socket = s;
        p_dev->device_no = (s->device_count++);
 
        char configbyte;
        struct pd6729_socket *socket;
 
-       socket = kmalloc(sizeof(struct pd6729_socket) * MAX_SOCKETS,
+       socket = kzalloc(sizeof(struct pd6729_socket) * MAX_SOCKETS,
                         GFP_KERNEL);
        if (!socket)
                return -ENOMEM;
 
-       memset(socket, 0, sizeof(struct pd6729_socket) * MAX_SOCKETS);
-
        if ((ret = pci_enable_device(dev)))
                goto err_out_free_mem;
 
 
 {
        int ret;
 
-       mst_pcmcia_device = kmalloc(sizeof(*mst_pcmcia_device), GFP_KERNEL);
+       mst_pcmcia_device = kzalloc(sizeof(*mst_pcmcia_device), GFP_KERNEL);
        if (!mst_pcmcia_device)
                return -ENOMEM;
-       memset(mst_pcmcia_device, 0, sizeof(*mst_pcmcia_device));
        mst_pcmcia_device->name = "pxa2xx-pcmcia";
        mst_pcmcia_device->dev.platform_data = &mst_pcmcia_ops;
 
 
        int ret;
 
        sharpsl_pcmcia_ops.nr=platform_scoop_config->num_devs;
-       sharpsl_pcmcia_device = kmalloc(sizeof(*sharpsl_pcmcia_device), GFP_KERNEL);
+       sharpsl_pcmcia_device = kzalloc(sizeof(*sharpsl_pcmcia_device), GFP_KERNEL);
        if (!sharpsl_pcmcia_device)
                return -ENOMEM;
 
-       memset(sharpsl_pcmcia_device, 0, sizeof(*sharpsl_pcmcia_device));
        sharpsl_pcmcia_device->name = "pxa2xx-pcmcia";
        sharpsl_pcmcia_device->dev.platform_data = &sharpsl_pcmcia_ops;
        sharpsl_pcmcia_device->dev.parent=platform_scoop_config->devs[0].dev;
 
 static struct resource *
 make_resource(unsigned long b, unsigned long n, int flags, char *name)
 {
-       struct resource *res = kmalloc(sizeof(*res), GFP_KERNEL);
+       struct resource *res = kzalloc(sizeof(*res), GFP_KERNEL);
 
        if (res) {
-               memset(res, 0, sizeof(*res));
                res->name = name;
                res->start = b;
                res->end = b + n - 1;
           base, base+num-1);
 
     /* First, what does a floating port look like? */
-    b = kmalloc(256, GFP_KERNEL);
+    b = kzalloc(256, GFP_KERNEL);
     if (!b) {
             printk(KERN_ERR "do_io_probe: unable to kmalloc 256 bytes");
             return;
     }
-    memset(b, 0, 256);
     for (i = base, most = 0; i < base+num; i += 8) {
        res = claim_region(NULL, i, 8, IORESOURCE_IO, "PCMCIA IO probe");
        if (!res)
 {
        struct socket_data *data;
 
-       data = kmalloc(sizeof(struct socket_data), GFP_KERNEL);
+       data = kzalloc(sizeof(struct socket_data), GFP_KERNEL);
        if (!data)
                return -ENOMEM;
-       memset(data, 0, sizeof(struct socket_data));
 
        data->mem_db.next = &data->mem_db;
        data->io_db.next = &data->io_db;
 
 
        down(&soc_pcmcia_sockets_lock);
 
-       sinfo = kmalloc(SKT_DEV_INFO_SIZE(nr), GFP_KERNEL);
+       sinfo = kzalloc(SKT_DEV_INFO_SIZE(nr), GFP_KERNEL);
        if (!sinfo) {
                ret = -ENOMEM;
                goto out;
        }
 
-       memset(sinfo, 0, SKT_DEV_INFO_SIZE(nr));
        sinfo->nskt = nr;
 
        /*
 
        if (!(s->state & SOCKET_PRESENT))
                return -ENODEV;
 
-       cis = kmalloc(sizeof(cisdump_t), GFP_KERNEL);
+       cis = kzalloc(sizeof(cisdump_t), GFP_KERNEL);
        if (!cis)
                return -ENOMEM;
-       memset(cis, 0, sizeof(cisdump_t));
 
        cis->Length = count + 1;
        memcpy(cis->Data, buf, count);
 
                return -ENODEV;
        }
 
-       socket = kmalloc(sizeof(struct yenta_socket), GFP_KERNEL);
+       socket = kzalloc(sizeof(struct yenta_socket), GFP_KERNEL);
        if (!socket)
                return -ENOMEM;
-       memset(socket, 0, sizeof(*socket));
 
        /* prepare pcmcia_socket */
        socket->socket.ops = ¥ta_socket_operations;