ChangeSet 1.2233, 2005/03/28 17:42:49-08:00, [EMAIL PROTECTED]

        Mark "gfp" masks as "unsigned int" and use __nocast to find violations.
        
        This makes it hard(er) to mix argument orders by mistake for things like
        kmalloc() and friends, since silent integer promotion is now caught by
        sparse.



 arch/i386/kernel/pci-dma.c           |    2 -
 arch/ppc64/kernel/dma.c              |    2 -
 arch/ppc64/kernel/iommu.c            |    2 -
 arch/ppc64/kernel/pci_direct_iommu.c |    2 -
 arch/ppc64/kernel/pci_iommu.c        |    2 -
 arch/ppc64/kernel/vio.c              |    2 -
 drivers/base/dmapool.c               |    2 -
 drivers/block/pktcdvd.c              |    4 +--
 drivers/md/dm-crypt.c                |    2 -
 drivers/md/dm-io.c                   |    2 -
 drivers/md/dm-raid1.c                |    2 -
 drivers/md/multipath.c               |    2 -
 drivers/md/raid1.c                   |    4 +--
 drivers/md/raid10.c                  |    4 +--
 drivers/s390/scsi/zfcp_aux.c         |    2 -
 fs/bio.c                             |   10 ++++-----
 fs/buffer.c                          |    2 -
 fs/cifs/connect.c                    |    2 -
 fs/mpage.c                           |    3 +-
 fs/posix_acl.c                       |    6 ++---
 include/asm-generic/dma-mapping.h    |    4 +--
 include/asm-i386/dma-mapping.h       |    2 -
 include/asm-ppc64/dma-mapping.h      |    4 +--
 include/asm-ppc64/iommu.h            |    2 -
 include/linux/bio.h                  |    6 ++---
 include/linux/blkdev.h               |    2 -
 include/linux/buffer_head.h          |    2 -
 include/linux/gfp.h                  |   36 +++++++++++++++++------------------
 include/linux/jbd.h                  |    2 -
 include/linux/kfifo.h                |    4 +--
 include/linux/mempool.h              |    8 +++----
 include/linux/pagemap.h              |    2 -
 include/linux/posix_acl.h            |    6 ++---
 include/linux/slab.h                 |    8 +++----
 include/linux/swap.h                 |    2 -
 include/linux/vmalloc.h              |    4 +--
 kernel/kfifo.c                       |    4 +--
 kernel/signal.c                      |    2 -
 mm/filemap.c                         |    2 -
 mm/highmem.c                         |    4 +--
 mm/mempolicy.c                       |    8 +++----
 mm/mempool.c                         |    6 ++---
 mm/oom_kill.c                        |    2 -
 mm/page_alloc.c                      |   10 ++++-----
 mm/page_io.c                         |    2 -
 mm/shmem.c                           |    2 -
 mm/slab.c                            |   22 ++++++++++-----------
 mm/vmalloc.c                         |    4 +--
 48 files changed, 111 insertions(+), 110 deletions(-)


diff -Nru a/arch/i386/kernel/pci-dma.c b/arch/i386/kernel/pci-dma.c
--- a/arch/i386/kernel/pci-dma.c        2005-03-28 21:06:08 -08:00
+++ b/arch/i386/kernel/pci-dma.c        2005-03-28 21:06:08 -08:00
@@ -22,7 +22,7 @@
 };
 
 void *dma_alloc_coherent(struct device *dev, size_t size,
-                          dma_addr_t *dma_handle, int gfp)
+                          dma_addr_t *dma_handle, unsigned int __nocast gfp)
 {
        void *ret;
        struct dma_coherent_mem *mem = dev ? dev->dma_mem : NULL;
diff -Nru a/arch/ppc64/kernel/dma.c b/arch/ppc64/kernel/dma.c
--- a/arch/ppc64/kernel/dma.c   2005-03-28 21:06:08 -08:00
+++ b/arch/ppc64/kernel/dma.c   2005-03-28 21:06:08 -08:00
@@ -49,7 +49,7 @@
 EXPORT_SYMBOL(dma_set_mask);
 
 void *dma_alloc_coherent(struct device *dev, size_t size,
-               dma_addr_t *dma_handle, int flag)
+               dma_addr_t *dma_handle, unsigned int __nocast flag)
 {
        struct dma_mapping_ops *dma_ops = get_dma_ops(dev);
 
diff -Nru a/arch/ppc64/kernel/iommu.c b/arch/ppc64/kernel/iommu.c
--- a/arch/ppc64/kernel/iommu.c 2005-03-28 21:06:08 -08:00
+++ b/arch/ppc64/kernel/iommu.c 2005-03-28 21:06:08 -08:00
@@ -514,7 +514,7 @@
  * to the dma address (mapping) of the first page.
  */
 void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size,
-               dma_addr_t *dma_handle, int flag)
+               dma_addr_t *dma_handle, unsigned int __nocast flag)
 {
        void *ret = NULL;
        dma_addr_t mapping;
diff -Nru a/arch/ppc64/kernel/pci_direct_iommu.c 
b/arch/ppc64/kernel/pci_direct_iommu.c
--- a/arch/ppc64/kernel/pci_direct_iommu.c      2005-03-28 21:06:08 -08:00
+++ b/arch/ppc64/kernel/pci_direct_iommu.c      2005-03-28 21:06:08 -08:00
@@ -31,7 +31,7 @@
 #include "pci.h"
 
 static void *pci_direct_alloc_coherent(struct device *hwdev, size_t size,
-                                  dma_addr_t *dma_handle, int flag)
+                                  dma_addr_t *dma_handle, unsigned int 
__nocast flag)
 {
        void *ret;
 
diff -Nru a/arch/ppc64/kernel/pci_iommu.c b/arch/ppc64/kernel/pci_iommu.c
--- a/arch/ppc64/kernel/pci_iommu.c     2005-03-28 21:06:08 -08:00
+++ b/arch/ppc64/kernel/pci_iommu.c     2005-03-28 21:06:08 -08:00
@@ -76,7 +76,7 @@
  * to the dma address (mapping) of the first page.
  */
 static void *pci_iommu_alloc_coherent(struct device *hwdev, size_t size,
-                          dma_addr_t *dma_handle, int flag)
+                          dma_addr_t *dma_handle, unsigned int __nocast flag)
 {
        return iommu_alloc_coherent(devnode_table(hwdev), size, dma_handle,
                        flag);
diff -Nru a/arch/ppc64/kernel/vio.c b/arch/ppc64/kernel/vio.c
--- a/arch/ppc64/kernel/vio.c   2005-03-28 21:06:08 -08:00
+++ b/arch/ppc64/kernel/vio.c   2005-03-28 21:06:08 -08:00
@@ -585,7 +585,7 @@
 }
 
 static void *vio_alloc_coherent(struct device *dev, size_t size,
-                          dma_addr_t *dma_handle, int flag)
+                          dma_addr_t *dma_handle, unsigned int __nocast flag)
 {
        return iommu_alloc_coherent(to_vio_dev(dev)->iommu_table, size,
                        dma_handle, flag);
diff -Nru a/drivers/base/dmapool.c b/drivers/base/dmapool.c
--- a/drivers/base/dmapool.c    2005-03-28 21:06:08 -08:00
+++ b/drivers/base/dmapool.c    2005-03-28 21:06:08 -08:00
@@ -156,7 +156,7 @@
 
 
 static struct dma_page *
-pool_alloc_page (struct dma_pool *pool, int mem_flags)
+pool_alloc_page (struct dma_pool *pool, unsigned int __nocast mem_flags)
 {
        struct dma_page *page;
        int             mapsize;
diff -Nru a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
--- a/drivers/block/pktcdvd.c   2005-03-28 21:06:08 -08:00
+++ b/drivers/block/pktcdvd.c   2005-03-28 21:06:08 -08:00
@@ -219,7 +219,7 @@
        return 1;
 }
 
-static void *pkt_rb_alloc(int gfp_mask, void *data)
+static void *pkt_rb_alloc(unsigned int __nocast gfp_mask, void *data)
 {
        return kmalloc(sizeof(struct pkt_rb_node), gfp_mask);
 }
@@ -2054,7 +2054,7 @@
 }
 
 
-static void *psd_pool_alloc(int gfp_mask, void *data)
+static void *psd_pool_alloc(unsigned int __nocast gfp_mask, void *data)
 {
        return kmalloc(sizeof(struct packet_stacked_data), gfp_mask);
 }
diff -Nru a/drivers/md/dm-crypt.c b/drivers/md/dm-crypt.c
--- a/drivers/md/dm-crypt.c     2005-03-28 21:06:08 -08:00
+++ b/drivers/md/dm-crypt.c     2005-03-28 21:06:08 -08:00
@@ -96,7 +96,7 @@
 /*
  * Mempool alloc and free functions for the page
  */
-static void *mempool_alloc_page(int gfp_mask, void *data)
+static void *mempool_alloc_page(unsigned int __nocast gfp_mask, void *data)
 {
        return alloc_page(gfp_mask);
 }
diff -Nru a/drivers/md/dm-io.c b/drivers/md/dm-io.c
--- a/drivers/md/dm-io.c        2005-03-28 21:06:08 -08:00
+++ b/drivers/md/dm-io.c        2005-03-28 21:06:08 -08:00
@@ -32,7 +32,7 @@
 static unsigned _num_ios;
 static mempool_t *_io_pool;
 
-static void *alloc_io(int gfp_mask, void *pool_data)
+static void *alloc_io(unsigned int __nocast gfp_mask, void *pool_data)
 {
        return kmalloc(sizeof(struct io), gfp_mask);
 }
diff -Nru a/drivers/md/dm-raid1.c b/drivers/md/dm-raid1.c
--- a/drivers/md/dm-raid1.c     2005-03-28 21:06:08 -08:00
+++ b/drivers/md/dm-raid1.c     2005-03-28 21:06:08 -08:00
@@ -122,7 +122,7 @@
 /* FIXME move this */
 static void queue_bio(struct mirror_set *ms, struct bio *bio, int rw);
 
-static void *region_alloc(int gfp_mask, void *pool_data)
+static void *region_alloc(unsigned int __nocast gfp_mask, void *pool_data)
 {
        return kmalloc(sizeof(struct region), gfp_mask);
 }
diff -Nru a/drivers/md/multipath.c b/drivers/md/multipath.c
--- a/drivers/md/multipath.c    2005-03-28 21:06:08 -08:00
+++ b/drivers/md/multipath.c    2005-03-28 21:06:08 -08:00
@@ -38,7 +38,7 @@
 static mdk_personality_t multipath_personality;
 
 
-static void *mp_pool_alloc(int gfp_flags, void *data)
+static void *mp_pool_alloc(unsigned int __nocast gfp_flags, void *data)
 {
        struct multipath_bh *mpb;
        mpb = kmalloc(sizeof(*mpb), gfp_flags);
diff -Nru a/drivers/md/raid1.c b/drivers/md/raid1.c
--- a/drivers/md/raid1.c        2005-03-28 21:06:08 -08:00
+++ b/drivers/md/raid1.c        2005-03-28 21:06:08 -08:00
@@ -34,7 +34,7 @@
 static void unplug_slaves(mddev_t *mddev);
 
 
-static void * r1bio_pool_alloc(int gfp_flags, void *data)
+static void * r1bio_pool_alloc(unsigned int __nocast gfp_flags, void *data)
 {
        struct pool_info *pi = data;
        r1bio_t *r1_bio;
@@ -61,7 +61,7 @@
 #define RESYNC_PAGES ((RESYNC_BLOCK_SIZE + PAGE_SIZE-1) / PAGE_SIZE)
 #define RESYNC_WINDOW (2048*1024)
 
-static void * r1buf_pool_alloc(int gfp_flags, void *data)
+static void * r1buf_pool_alloc(unsigned int __nocast gfp_flags, void *data)
 {
        struct pool_info *pi = data;
        struct page *page;
diff -Nru a/drivers/md/raid10.c b/drivers/md/raid10.c
--- a/drivers/md/raid10.c       2005-03-28 21:06:08 -08:00
+++ b/drivers/md/raid10.c       2005-03-28 21:06:08 -08:00
@@ -47,7 +47,7 @@
 
 static void unplug_slaves(mddev_t *mddev);
 
-static void * r10bio_pool_alloc(int gfp_flags, void *data)
+static void * r10bio_pool_alloc(unsigned int __nocast gfp_flags, void *data)
 {
        conf_t *conf = data;
        r10bio_t *r10_bio;
@@ -81,7 +81,7 @@
  * one for write (we recover only one drive per r10buf)
  *
  */
-static void * r10buf_pool_alloc(int gfp_flags, void *data)
+static void * r10buf_pool_alloc(unsigned int __nocast gfp_flags, void *data)
 {
        conf_t *conf = data;
        struct page *page;
diff -Nru a/drivers/s390/scsi/zfcp_aux.c b/drivers/s390/scsi/zfcp_aux.c
--- a/drivers/s390/scsi/zfcp_aux.c      2005-03-28 21:06:08 -08:00
+++ b/drivers/s390/scsi/zfcp_aux.c      2005-03-28 21:06:08 -08:00
@@ -928,7 +928,7 @@
 }
 
 static void *
-zfcp_mempool_alloc(int gfp_mask, void *size)
+zfcp_mempool_alloc(unsigned int __nocast gfp_mask, void *size)
 {
        return kmalloc((size_t) size, gfp_mask);
 }
diff -Nru a/fs/bio.c b/fs/bio.c
--- a/fs/bio.c  2005-03-28 21:06:08 -08:00
+++ b/fs/bio.c  2005-03-28 21:06:08 -08:00
@@ -74,7 +74,7 @@
  */
 static struct bio_set *fs_bio_set;
 
-static inline struct bio_vec *bvec_alloc_bs(int gfp_mask, int nr, unsigned 
long *idx, struct bio_set *bs)
+static inline struct bio_vec *bvec_alloc_bs(unsigned int __nocast gfp_mask, 
int nr, unsigned long *idx, struct bio_set *bs)
 {
        struct bio_vec *bvl;
        struct biovec_slab *bp;
@@ -149,7 +149,7 @@
  *   allocate bio and iovecs from the memory pools specified by the
  *   bio_set structure.
  **/
-struct bio *bio_alloc_bioset(int gfp_mask, int nr_iovecs, struct bio_set *bs)
+struct bio *bio_alloc_bioset(unsigned int __nocast gfp_mask, int nr_iovecs, 
struct bio_set *bs)
 {
        struct bio *bio = mempool_alloc(bs->bio_pool, gfp_mask);
 
@@ -177,7 +177,7 @@
        return bio;
 }
 
-struct bio *bio_alloc(int gfp_mask, int nr_iovecs)
+struct bio *bio_alloc(unsigned int __nocast gfp_mask, int nr_iovecs)
 {
        return bio_alloc_bioset(gfp_mask, nr_iovecs, fs_bio_set);
 }
@@ -271,7 +271,7 @@
  *
  *     Like __bio_clone, only also allocates the returned bio
  */
-struct bio *bio_clone(struct bio *bio, int gfp_mask)
+struct bio *bio_clone(struct bio *bio, unsigned int __nocast gfp_mask)
 {
        struct bio *b = bio_alloc_bioset(gfp_mask, bio->bi_max_vecs, 
fs_bio_set);
 
@@ -934,7 +934,7 @@
        return bp;
 }
 
-static void *bio_pair_alloc(int gfp_flags, void *data)
+static void *bio_pair_alloc(unsigned int __nocast gfp_flags, void *data)
 {
        return kmalloc(sizeof(struct bio_pair), gfp_flags);
 }
diff -Nru a/fs/buffer.c b/fs/buffer.c
--- a/fs/buffer.c       2005-03-28 21:06:08 -08:00
+++ b/fs/buffer.c       2005-03-28 21:06:08 -08:00
@@ -3052,7 +3052,7 @@
        buffer_heads_over_limit = (tot > max_buffer_heads);
 }
        
-struct buffer_head *alloc_buffer_head(int gfp_flags)
+struct buffer_head *alloc_buffer_head(unsigned int __nocast gfp_flags)
 {
        struct buffer_head *ret = kmem_cache_alloc(bh_cachep, gfp_flags);
        if (ret) {
diff -Nru a/fs/cifs/connect.c b/fs/cifs/connect.c
--- a/fs/cifs/connect.c 2005-03-28 21:06:08 -08:00
+++ b/fs/cifs/connect.c 2005-03-28 21:06:08 -08:00
@@ -470,7 +470,7 @@
 }
 
 static void * 
-cifs_kcalloc(size_t size, int type)
+cifs_kcalloc(size_t size, unsigned int __nocast type)
 {
        void *addr;
        addr = kmalloc(size, type);
diff -Nru a/fs/mpage.c b/fs/mpage.c
--- a/fs/mpage.c        2005-03-28 21:06:08 -08:00
+++ b/fs/mpage.c        2005-03-28 21:06:08 -08:00
@@ -98,7 +98,8 @@
 
 static struct bio *
 mpage_alloc(struct block_device *bdev,
-               sector_t first_sector, int nr_vecs, int gfp_flags)
+               sector_t first_sector, int nr_vecs,
+               unsigned int __nocast gfp_flags)
 {
        struct bio *bio;
 
diff -Nru a/fs/posix_acl.c b/fs/posix_acl.c
--- a/fs/posix_acl.c    2005-03-28 21:06:08 -08:00
+++ b/fs/posix_acl.c    2005-03-28 21:06:08 -08:00
@@ -35,7 +35,7 @@
  * Allocate a new ACL with the specified number of entries.
  */
 struct posix_acl *
-posix_acl_alloc(int count, int flags)
+posix_acl_alloc(int count, unsigned int __nocast flags)
 {
        const size_t size = sizeof(struct posix_acl) +
                            count * sizeof(struct posix_acl_entry);
@@ -51,7 +51,7 @@
  * Clone an ACL.
  */
 struct posix_acl *
-posix_acl_clone(const struct posix_acl *acl, int flags)
+posix_acl_clone(const struct posix_acl *acl, unsigned int __nocast flags)
 {
        struct posix_acl *clone = NULL;
 
@@ -185,7 +185,7 @@
  * Create an ACL representing the file mode permission bits of an inode.
  */
 struct posix_acl *
-posix_acl_from_mode(mode_t mode, int flags)
+posix_acl_from_mode(mode_t mode, unsigned int __nocast flags)
 {
        struct posix_acl *acl = posix_acl_alloc(3, flags);
        if (!acl)
diff -Nru a/include/asm-generic/dma-mapping.h 
b/include/asm-generic/dma-mapping.h
--- a/include/asm-generic/dma-mapping.h 2005-03-28 21:06:08 -08:00
+++ b/include/asm-generic/dma-mapping.h 2005-03-28 21:06:08 -08:00
@@ -35,7 +35,7 @@
 
 static inline void *
 dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
-                  int flag)
+                  unsigned int __nocast flag)
 {
        BUG_ON(dev->bus != &pci_bus_type);
 
@@ -168,7 +168,7 @@
 
 static inline void *
 dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
-                  int flag)
+                  unsigned int __nocast flag)
 {
        BUG();
        return NULL;
diff -Nru a/include/asm-i386/dma-mapping.h b/include/asm-i386/dma-mapping.h
--- a/include/asm-i386/dma-mapping.h    2005-03-28 21:06:08 -08:00
+++ b/include/asm-i386/dma-mapping.h    2005-03-28 21:06:08 -08:00
@@ -11,7 +11,7 @@
 #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
 
 void *dma_alloc_coherent(struct device *dev, size_t size,
-                          dma_addr_t *dma_handle, int flag);
+                          dma_addr_t *dma_handle, unsigned int __nocast flag);
 
 void dma_free_coherent(struct device *dev, size_t size,
                         void *vaddr, dma_addr_t dma_handle);
diff -Nru a/include/asm-ppc64/dma-mapping.h b/include/asm-ppc64/dma-mapping.h
--- a/include/asm-ppc64/dma-mapping.h   2005-03-28 21:06:08 -08:00
+++ b/include/asm-ppc64/dma-mapping.h   2005-03-28 21:06:08 -08:00
@@ -19,7 +19,7 @@
 extern int dma_supported(struct device *dev, u64 mask);
 extern int dma_set_mask(struct device *dev, u64 dma_mask);
 extern void *dma_alloc_coherent(struct device *dev, size_t size,
-               dma_addr_t *dma_handle, int flag);
+               dma_addr_t *dma_handle, unsigned int __nocast flag);
 extern void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr,
                dma_addr_t dma_handle);
 extern dma_addr_t dma_map_single(struct device *dev, void *cpu_addr,
@@ -118,7 +118,7 @@
  */
 struct dma_mapping_ops {
        void *          (*alloc_coherent)(struct device *dev, size_t size,
-                               dma_addr_t *dma_handle, int flag);
+                               dma_addr_t *dma_handle, unsigned int __nocast 
flag);
        void            (*free_coherent)(struct device *dev, size_t size,
                                void *vaddr, dma_addr_t dma_handle);
        dma_addr_t      (*map_single)(struct device *dev, void *ptr,
diff -Nru a/include/asm-ppc64/iommu.h b/include/asm-ppc64/iommu.h
--- a/include/asm-ppc64/iommu.h 2005-03-28 21:06:08 -08:00
+++ b/include/asm-ppc64/iommu.h 2005-03-28 21:06:08 -08:00
@@ -146,7 +146,7 @@
                int nelems, enum dma_data_direction direction);
 
 extern void *iommu_alloc_coherent(struct iommu_table *tbl, size_t size,
-               dma_addr_t *dma_handle, int flag);
+               dma_addr_t *dma_handle, unsigned int __nocast flag);
 extern void iommu_free_coherent(struct iommu_table *tbl, size_t size,
                void *vaddr, dma_addr_t dma_handle);
 extern dma_addr_t iommu_map_single(struct iommu_table *tbl, void *vaddr,
diff -Nru a/include/linux/bio.h b/include/linux/bio.h
--- a/include/linux/bio.h       2005-03-28 21:06:08 -08:00
+++ b/include/linux/bio.h       2005-03-28 21:06:08 -08:00
@@ -263,8 +263,8 @@
 extern struct bio_set *bioset_create(int, int, int);
 extern void bioset_free(struct bio_set *);
 
-extern struct bio *bio_alloc(int, int);
-extern struct bio *bio_alloc_bioset(int, int, struct bio_set *);
+extern struct bio *bio_alloc(unsigned int __nocast, int);
+extern struct bio *bio_alloc_bioset(unsigned int __nocast, int, struct bio_set 
*);
 extern void bio_put(struct bio *);
 
 extern void bio_endio(struct bio *, unsigned int, int);
@@ -273,7 +273,7 @@
 extern int bio_hw_segments(struct request_queue *, struct bio *);
 
 extern void __bio_clone(struct bio *, struct bio *);
-extern struct bio *bio_clone(struct bio *, int);
+extern struct bio *bio_clone(struct bio *, unsigned int __nocast);
 
 extern void bio_init(struct bio *);
 
diff -Nru a/include/linux/blkdev.h b/include/linux/blkdev.h
--- a/include/linux/blkdev.h    2005-03-28 21:06:08 -08:00
+++ b/include/linux/blkdev.h    2005-03-28 21:06:08 -08:00
@@ -347,7 +347,7 @@
         * queue needs bounce pages for pages above this limit
         */
        unsigned long           bounce_pfn;
-       int                     bounce_gfp;
+       unsigned int            bounce_gfp;
 
        /*
         * various queue flags, see QUEUE_* below
diff -Nru a/include/linux/buffer_head.h b/include/linux/buffer_head.h
--- a/include/linux/buffer_head.h       2005-03-28 21:06:08 -08:00
+++ b/include/linux/buffer_head.h       2005-03-28 21:06:08 -08:00
@@ -169,7 +169,7 @@
 void __bforget(struct buffer_head *);
 void __breadahead(struct block_device *, sector_t block, int size);
 struct buffer_head *__bread(struct block_device *, sector_t block, int size);
-struct buffer_head *alloc_buffer_head(int gfp_flags);
+struct buffer_head *alloc_buffer_head(unsigned int __nocast gfp_flags);
 void free_buffer_head(struct buffer_head * bh);
 void FASTCALL(unlock_buffer(struct buffer_head *bh));
 void FASTCALL(__lock_buffer(struct buffer_head *bh));
diff -Nru a/include/linux/gfp.h b/include/linux/gfp.h
--- a/include/linux/gfp.h       2005-03-28 21:06:08 -08:00
+++ b/include/linux/gfp.h       2005-03-28 21:06:08 -08:00
@@ -26,18 +26,18 @@
  *
  * __GFP_NORETRY: The VM implementation must not retry indefinitely.
  */
-#define __GFP_WAIT     0x10    /* Can wait and reschedule? */
-#define __GFP_HIGH     0x20    /* Should access emergency pools? */
-#define __GFP_IO       0x40    /* Can start physical IO? */
-#define __GFP_FS       0x80    /* Can call down to low-level FS? */
-#define __GFP_COLD     0x100   /* Cache-cold page required */
-#define __GFP_NOWARN   0x200   /* Suppress page allocation failure warning */
-#define __GFP_REPEAT   0x400   /* Retry the allocation.  Might fail */
-#define __GFP_NOFAIL   0x800   /* Retry for ever.  Cannot fail */
-#define __GFP_NORETRY  0x1000  /* Do not retry.  Might fail */
-#define __GFP_NO_GROW  0x2000  /* Slab internal usage */
-#define __GFP_COMP     0x4000  /* Add compound page metadata */
-#define __GFP_ZERO     0x8000  /* Return zeroed page on success */
+#define __GFP_WAIT     0x10u   /* Can wait and reschedule? */
+#define __GFP_HIGH     0x20u   /* Should access emergency pools? */
+#define __GFP_IO       0x40u   /* Can start physical IO? */
+#define __GFP_FS       0x80u   /* Can call down to low-level FS? */
+#define __GFP_COLD     0x100u  /* Cache-cold page required */
+#define __GFP_NOWARN   0x200u  /* Suppress page allocation failure warning */
+#define __GFP_REPEAT   0x400u  /* Retry the allocation.  Might fail */
+#define __GFP_NOFAIL   0x800u  /* Retry for ever.  Cannot fail */
+#define __GFP_NORETRY  0x1000u /* Do not retry.  Might fail */
+#define __GFP_NO_GROW  0x2000u /* Slab internal usage */
+#define __GFP_COMP     0x4000u /* Add compound page metadata */
+#define __GFP_ZERO     0x8000u /* Return zeroed page on success */
 
 #define __GFP_BITS_SHIFT 16    /* Room for 16 __GFP_FOO bits */
 #define __GFP_BITS_MASK ((1 << __GFP_BITS_SHIFT) - 1)
@@ -82,7 +82,7 @@
 extern struct page *
 FASTCALL(__alloc_pages(unsigned int, unsigned int, struct zonelist *));
 
-static inline struct page *alloc_pages_node(int nid, unsigned int gfp_mask,
+static inline struct page *alloc_pages_node(int nid, unsigned int __nocast 
gfp_mask,
                                                unsigned int order)
 {
        if (unlikely(order >= MAX_ORDER))
@@ -93,17 +93,17 @@
 }
 
 #ifdef CONFIG_NUMA
-extern struct page *alloc_pages_current(unsigned gfp_mask, unsigned order);
+extern struct page *alloc_pages_current(unsigned int __nocast gfp_mask, 
unsigned order);
 
 static inline struct page *
-alloc_pages(unsigned int gfp_mask, unsigned int order)
+alloc_pages(unsigned int __nocast gfp_mask, unsigned int order)
 {
        if (unlikely(order >= MAX_ORDER))
                return NULL;
 
        return alloc_pages_current(gfp_mask, order);
 }
-extern struct page *alloc_page_vma(unsigned gfp_mask,
+extern struct page *alloc_page_vma(unsigned __nocast gfp_mask,
                        struct vm_area_struct *vma, unsigned long addr);
 #else
 #define alloc_pages(gfp_mask, order) \
@@ -112,8 +112,8 @@
 #endif
 #define alloc_page(gfp_mask) alloc_pages(gfp_mask, 0)
 
-extern unsigned long FASTCALL(__get_free_pages(unsigned int gfp_mask, unsigned 
int order));
-extern unsigned long FASTCALL(get_zeroed_page(unsigned int gfp_mask));
+extern unsigned long FASTCALL(__get_free_pages(unsigned int __nocast gfp_mask, 
unsigned int order));
+extern unsigned long FASTCALL(get_zeroed_page(unsigned int __nocast gfp_mask));
 
 #define __get_free_page(gfp_mask) \
                __get_free_pages((gfp_mask),0)
diff -Nru a/include/linux/jbd.h b/include/linux/jbd.h
--- a/include/linux/jbd.h       2005-03-28 21:06:08 -08:00
+++ b/include/linux/jbd.h       2005-03-28 21:06:08 -08:00
@@ -934,7 +934,7 @@
  */
 extern kmem_cache_t *jbd_handle_cache;
 
-static inline handle_t *jbd_alloc_handle(int gfp_flags)
+static inline handle_t *jbd_alloc_handle(unsigned int __nocast gfp_flags)
 {
        return kmem_cache_alloc(jbd_handle_cache, gfp_flags);
 }
diff -Nru a/include/linux/kfifo.h b/include/linux/kfifo.h
--- a/include/linux/kfifo.h     2005-03-28 21:06:08 -08:00
+++ b/include/linux/kfifo.h     2005-03-28 21:06:08 -08:00
@@ -35,8 +35,8 @@
 };
 
 extern struct kfifo *kfifo_init(unsigned char *buffer, unsigned int size,
-                               int gfp_mask, spinlock_t *lock);
-extern struct kfifo *kfifo_alloc(unsigned int size, int gfp_mask,
+                               unsigned int __nocast gfp_mask, spinlock_t 
*lock);
+extern struct kfifo *kfifo_alloc(unsigned int size, unsigned int __nocast 
gfp_mask,
                                 spinlock_t *lock);
 extern void kfifo_free(struct kfifo *fifo);
 extern unsigned int __kfifo_put(struct kfifo *fifo,
diff -Nru a/include/linux/mempool.h b/include/linux/mempool.h
--- a/include/linux/mempool.h   2005-03-28 21:06:08 -08:00
+++ b/include/linux/mempool.h   2005-03-28 21:06:08 -08:00
@@ -6,7 +6,7 @@
 
 #include <linux/wait.h>
 
-typedef void * (mempool_alloc_t)(int gfp_mask, void *pool_data);
+typedef void * (mempool_alloc_t)(unsigned int __nocast gfp_mask, void 
*pool_data);
 typedef void (mempool_free_t)(void *element, void *pool_data);
 
 typedef struct mempool_s {
@@ -22,16 +22,16 @@
 } mempool_t;
 extern mempool_t * mempool_create(int min_nr, mempool_alloc_t *alloc_fn,
                                 mempool_free_t *free_fn, void *pool_data);
-extern int mempool_resize(mempool_t *pool, int new_min_nr, int gfp_mask);
+extern int mempool_resize(mempool_t *pool, int new_min_nr, unsigned int 
__nocast gfp_mask);
 extern void mempool_destroy(mempool_t *pool);
-extern void * mempool_alloc(mempool_t *pool, int gfp_mask);
+extern void * mempool_alloc(mempool_t *pool, unsigned int __nocast gfp_mask);
 extern void mempool_free(void *element, mempool_t *pool);
 
 /*
  * A mempool_alloc_t and mempool_free_t that get the memory from
  * a slab that is passed in through pool_data.
  */
-void *mempool_alloc_slab(int gfp_mask, void *pool_data);
+void *mempool_alloc_slab(unsigned int __nocast gfp_mask, void *pool_data);
 void mempool_free_slab(void *element, void *pool_data);
 
 #endif /* _LINUX_MEMPOOL_H */
diff -Nru a/include/linux/pagemap.h b/include/linux/pagemap.h
--- a/include/linux/pagemap.h   2005-03-28 21:06:08 -08:00
+++ b/include/linux/pagemap.h   2005-03-28 21:06:08 -08:00
@@ -19,7 +19,7 @@
 #define        AS_EIO          (__GFP_BITS_SHIFT + 0)  /* IO error on async 
write */
 #define AS_ENOSPC      (__GFP_BITS_SHIFT + 1)  /* ENOSPC on async write */
 
-static inline int mapping_gfp_mask(struct address_space * mapping)
+static inline unsigned int __nocast mapping_gfp_mask(struct address_space * 
mapping)
 {
        return mapping->flags & __GFP_BITS_MASK;
 }
diff -Nru a/include/linux/posix_acl.h b/include/linux/posix_acl.h
--- a/include/linux/posix_acl.h 2005-03-28 21:06:08 -08:00
+++ b/include/linux/posix_acl.h 2005-03-28 21:06:08 -08:00
@@ -71,11 +71,11 @@
 
 /* posix_acl.c */
 
-extern struct posix_acl *posix_acl_alloc(int, int);
-extern struct posix_acl *posix_acl_clone(const struct posix_acl *, int);
+extern struct posix_acl *posix_acl_alloc(int, unsigned int __nocast);
+extern struct posix_acl *posix_acl_clone(const struct posix_acl *, unsigned 
int __nocast);
 extern int posix_acl_valid(const struct posix_acl *);
 extern int posix_acl_permission(struct inode *, const struct posix_acl *, int);
-extern struct posix_acl *posix_acl_from_mode(mode_t, int);
+extern struct posix_acl *posix_acl_from_mode(mode_t, unsigned int __nocast);
 extern int posix_acl_equiv_mode(const struct posix_acl *, mode_t *);
 extern int posix_acl_create_masq(struct posix_acl *, mode_t *);
 extern int posix_acl_chmod_masq(struct posix_acl *, mode_t);
diff -Nru a/include/linux/slab.h b/include/linux/slab.h
--- a/include/linux/slab.h      2005-03-28 21:06:08 -08:00
+++ b/include/linux/slab.h      2005-03-28 21:06:08 -08:00
@@ -61,7 +61,7 @@
                                       void (*)(void *, kmem_cache_t *, 
unsigned long));
 extern int kmem_cache_destroy(kmem_cache_t *);
 extern int kmem_cache_shrink(kmem_cache_t *);
-extern void *kmem_cache_alloc(kmem_cache_t *, int);
+extern void *kmem_cache_alloc(kmem_cache_t *, unsigned int __nocast);
 #ifdef CONFIG_NUMA
 extern void *kmem_cache_alloc_node(kmem_cache_t *, int);
 #else
@@ -80,9 +80,9 @@
        kmem_cache_t    *cs_dmacachep;
 };
 extern struct cache_sizes malloc_sizes[];
-extern void *__kmalloc(size_t, int);
+extern void *__kmalloc(size_t, unsigned int __nocast);
 
-static inline void *kmalloc(size_t size, int flags)
+static inline void *kmalloc(size_t size, unsigned int __nocast flags)
 {
        if (__builtin_constant_p(size)) {
                int i = 0;
@@ -105,7 +105,7 @@
        return __kmalloc(size, flags);
 }
 
-extern void *kcalloc(size_t, size_t, int);
+extern void *kcalloc(size_t, size_t, unsigned int __nocast);
 extern void kfree(const void *);
 extern unsigned int ksize(const void *);
 
diff -Nru a/include/linux/swap.h b/include/linux/swap.h
--- a/include/linux/swap.h      2005-03-28 21:06:08 -08:00
+++ b/include/linux/swap.h      2005-03-28 21:06:08 -08:00
@@ -148,7 +148,7 @@
 #define vm_swap_full() (nr_swap_pages*2 < total_swap_pages)
 
 /* linux/mm/oom_kill.c */
-extern void out_of_memory(int gfp_mask);
+extern void out_of_memory(unsigned int __nocast gfp_mask);
 
 /* linux/mm/memory.c */
 extern void swapin_readahead(swp_entry_t, unsigned long, struct vm_area_struct 
*);
diff -Nru a/include/linux/vmalloc.h b/include/linux/vmalloc.h
--- a/include/linux/vmalloc.h   2005-03-28 21:06:08 -08:00
+++ b/include/linux/vmalloc.h   2005-03-28 21:06:08 -08:00
@@ -26,8 +26,8 @@
 extern void *vmalloc(unsigned long size);
 extern void *vmalloc_exec(unsigned long size);
 extern void *vmalloc_32(unsigned long size);
-extern void *__vmalloc(unsigned long size, int gfp_mask, pgprot_t prot);
-extern void *__vmalloc_area(struct vm_struct *area, int gfp_mask, pgprot_t 
prot);
+extern void *__vmalloc(unsigned long size, unsigned int __nocast gfp_mask, 
pgprot_t prot);
+extern void *__vmalloc_area(struct vm_struct *area, unsigned int __nocast 
gfp_mask, pgprot_t prot);
 extern void vfree(void *addr);
 
 extern void *vmap(struct page **pages, unsigned int count,
diff -Nru a/kernel/kfifo.c b/kernel/kfifo.c
--- a/kernel/kfifo.c    2005-03-28 21:06:08 -08:00
+++ b/kernel/kfifo.c    2005-03-28 21:06:08 -08:00
@@ -36,7 +36,7 @@
  * struct kfifo with kfree().
  */
 struct kfifo *kfifo_init(unsigned char *buffer, unsigned int size,
-                        int gfp_mask, spinlock_t *lock)
+                        unsigned int __nocast gfp_mask, spinlock_t *lock)
 {
        struct kfifo *fifo;
 
@@ -64,7 +64,7 @@
  *
  * The size will be rounded-up to a power of 2.
  */
-struct kfifo *kfifo_alloc(unsigned int size, int gfp_mask, spinlock_t *lock)
+struct kfifo *kfifo_alloc(unsigned int size, unsigned int __nocast gfp_mask, 
spinlock_t *lock)
 {
        unsigned char *buffer;
        struct kfifo *ret;
diff -Nru a/kernel/signal.c b/kernel/signal.c
--- a/kernel/signal.c   2005-03-28 21:06:08 -08:00
+++ b/kernel/signal.c   2005-03-28 21:06:08 -08:00
@@ -259,7 +259,7 @@
        return sig;
 }
 
-static struct sigqueue *__sigqueue_alloc(struct task_struct *t, int flags,
+static struct sigqueue *__sigqueue_alloc(struct task_struct *t, unsigned int 
__nocast flags,
                                         int override_rlimit)
 {
        struct sigqueue *q = NULL;
diff -Nru a/mm/filemap.c b/mm/filemap.c
--- a/mm/filemap.c      2005-03-28 21:06:08 -08:00
+++ b/mm/filemap.c      2005-03-28 21:06:08 -08:00
@@ -666,7 +666,7 @@
 grab_cache_page_nowait(struct address_space *mapping, unsigned long index)
 {
        struct page *page = find_get_page(mapping, index);
-       int gfp_mask;
+       unsigned int gfp_mask;
 
        if (page) {
                if (!TestSetPageLocked(page))
diff -Nru a/mm/highmem.c b/mm/highmem.c
--- a/mm/highmem.c      2005-03-28 21:06:08 -08:00
+++ b/mm/highmem.c      2005-03-28 21:06:08 -08:00
@@ -30,9 +30,9 @@
 
 static mempool_t *page_pool, *isa_page_pool;
 
-static void *page_pool_alloc(int gfp_mask, void *data)
+static void *page_pool_alloc(unsigned int __nocast gfp_mask, void *data)
 {
-       int gfp = gfp_mask | (int) (long) data;
+       unsigned int gfp = gfp_mask | (unsigned int) (long) data;
 
        return alloc_page(gfp);
 }
diff -Nru a/mm/mempolicy.c b/mm/mempolicy.c
--- a/mm/mempolicy.c    2005-03-28 21:06:08 -08:00
+++ b/mm/mempolicy.c    2005-03-28 21:06:08 -08:00
@@ -648,7 +648,7 @@
 }
 
 /* Return a zonelist representing a mempolicy */
-static struct zonelist *zonelist_policy(unsigned gfp, struct mempolicy *policy)
+static struct zonelist *zonelist_policy(unsigned int __nocast gfp, struct 
mempolicy *policy)
 {
        int nd;
 
@@ -712,7 +712,7 @@
 
 /* Allocate a page in interleaved policy.
    Own path because it needs to do special accounting. */
-static struct page *alloc_page_interleave(unsigned gfp, unsigned order, 
unsigned nid)
+static struct page *alloc_page_interleave(unsigned int __nocast gfp, unsigned 
order, unsigned nid)
 {
        struct zonelist *zl;
        struct page *page;
@@ -750,7 +750,7 @@
  *     Should be called with the mm_sem of the vma hold.
  */
 struct page *
-alloc_page_vma(unsigned gfp, struct vm_area_struct *vma, unsigned long addr)
+alloc_page_vma(unsigned int __nocast gfp, struct vm_area_struct *vma, unsigned 
long addr)
 {
        struct mempolicy *pol = get_vma_policy(vma, addr);
 
@@ -789,7 +789,7 @@
  *     interrupt context and apply the current process NUMA policy.
  *     Returns NULL when no page can be allocated.
  */
-struct page *alloc_pages_current(unsigned gfp, unsigned order)
+struct page *alloc_pages_current(unsigned int __nocast gfp, unsigned order)
 {
        struct mempolicy *pol = current->mempolicy;
 
diff -Nru a/mm/mempool.c b/mm/mempool.c
--- a/mm/mempool.c      2005-03-28 21:06:08 -08:00
+++ b/mm/mempool.c      2005-03-28 21:06:08 -08:00
@@ -105,7 +105,7 @@
  * while this function is running. mempool_alloc() & mempool_free()
  * might be called (eg. from IRQ contexts) while this function executes.
  */
-int mempool_resize(mempool_t *pool, int new_min_nr, int gfp_mask)
+int mempool_resize(mempool_t *pool, int new_min_nr, unsigned int __nocast 
gfp_mask)
 {
        void *element;
        void **new_elements;
@@ -193,7 +193,7 @@
  * *never* fails when called from process contexts. (it might
  * fail if called from an IRQ context.)
  */
-void * mempool_alloc(mempool_t *pool, int gfp_mask)
+void * mempool_alloc(mempool_t *pool, unsigned int __nocast gfp_mask)
 {
        void *element;
        unsigned long flags;
@@ -275,7 +275,7 @@
 /*
  * A commonly used alloc and free fn.
  */
-void *mempool_alloc_slab(int gfp_mask, void *pool_data)
+void *mempool_alloc_slab(unsigned int __nocast gfp_mask, void *pool_data)
 {
        kmem_cache_t *mem = (kmem_cache_t *) pool_data;
        return kmem_cache_alloc(mem, gfp_mask);
diff -Nru a/mm/oom_kill.c b/mm/oom_kill.c
--- a/mm/oom_kill.c     2005-03-28 21:06:08 -08:00
+++ b/mm/oom_kill.c     2005-03-28 21:06:08 -08:00
@@ -253,7 +253,7 @@
  * OR try to be smart about which process to kill. Note that we
  * don't have to be perfect here, we just have to be good.
  */
-void out_of_memory(int gfp_mask)
+void out_of_memory(unsigned int __nocast gfp_mask)
 {
        struct mm_struct *mm = NULL;
        task_t * p;
diff -Nru a/mm/page_alloc.c b/mm/page_alloc.c
--- a/mm/page_alloc.c   2005-03-28 21:06:08 -08:00
+++ b/mm/page_alloc.c   2005-03-28 21:06:08 -08:00
@@ -633,7 +633,7 @@
        free_hot_cold_page(page, 1);
 }
 
-static inline void prep_zero_page(struct page *page, int order, int gfp_flags)
+static inline void prep_zero_page(struct page *page, int order, unsigned int 
__nocast gfp_flags)
 {
        int i;
 
@@ -648,7 +648,7 @@
  * or two.
  */
 static struct page *
-buffered_rmqueue(struct zone *zone, int order, int gfp_flags)
+buffered_rmqueue(struct zone *zone, int order, unsigned int __nocast gfp_flags)
 {
        unsigned long flags;
        struct page *page = NULL;
@@ -726,7 +726,7 @@
  * This is the 'heart' of the zoned buddy allocator.
  */
 struct page * fastcall
-__alloc_pages(unsigned int gfp_mask, unsigned int order,
+__alloc_pages(unsigned int __nocast gfp_mask, unsigned int order,
                struct zonelist *zonelist)
 {
        const int wait = gfp_mask & __GFP_WAIT;
@@ -908,7 +908,7 @@
 /*
  * Common helper functions.
  */
-fastcall unsigned long __get_free_pages(unsigned int gfp_mask, unsigned int 
order)
+fastcall unsigned long __get_free_pages(unsigned int __nocast gfp_mask, 
unsigned int order)
 {
        struct page * page;
        page = alloc_pages(gfp_mask, order);
@@ -919,7 +919,7 @@
 
 EXPORT_SYMBOL(__get_free_pages);
 
-fastcall unsigned long get_zeroed_page(unsigned int gfp_mask)
+fastcall unsigned long get_zeroed_page(unsigned int __nocast gfp_mask)
 {
        struct page * page;
 
diff -Nru a/mm/page_io.c b/mm/page_io.c
--- a/mm/page_io.c      2005-03-28 21:06:08 -08:00
+++ b/mm/page_io.c      2005-03-28 21:06:08 -08:00
@@ -19,7 +19,7 @@
 #include <linux/writeback.h>
 #include <asm/pgtable.h>
 
-static struct bio *get_swap_bio(int gfp_flags, pgoff_t index,
+static struct bio *get_swap_bio(unsigned int __nocast gfp_flags, pgoff_t index,
                                struct page *page, bio_end_io_t end_io)
 {
        struct bio *bio;
diff -Nru a/mm/shmem.c b/mm/shmem.c
--- a/mm/shmem.c        2005-03-28 21:06:08 -08:00
+++ b/mm/shmem.c        2005-03-28 21:06:08 -08:00
@@ -922,7 +922,7 @@
 }
 
 static inline struct page *
-shmem_alloc_page(unsigned long gfp,struct shmem_inode_info *info,
+shmem_alloc_page(unsigned int __nocast gfp,struct shmem_inode_info *info,
                                 unsigned long idx)
 {
        return alloc_page(gfp | __GFP_ZERO);
diff -Nru a/mm/slab.c b/mm/slab.c
--- a/mm/slab.c 2005-03-28 21:06:08 -08:00
+++ b/mm/slab.c 2005-03-28 21:06:08 -08:00
@@ -888,7 +888,7 @@
  * did not request dmaable memory, we might get it, but that
  * would be relatively rare and ignorable.
  */
-static void *kmem_getpages(kmem_cache_t *cachep, int flags, int nodeid)
+static void *kmem_getpages(kmem_cache_t *cachep, unsigned int __nocast flags, 
int nodeid)
 {
        struct page *page;
        void *addr;
@@ -1678,7 +1678,7 @@
 
 /* Get the memory for a slab management obj. */
 static struct slab* alloc_slabmgmt (kmem_cache_t *cachep,
-                       void *objp, int colour_off, int local_flags)
+                       void *objp, int colour_off, unsigned int __nocast 
local_flags)
 {
        struct slab *slabp;
        
@@ -1749,7 +1749,7 @@
        slabp->free = 0;
 }
 
-static void kmem_flagcheck(kmem_cache_t *cachep, int flags)
+static void kmem_flagcheck(kmem_cache_t *cachep, unsigned int flags)
 {
        if (flags & SLAB_DMA) {
                if (!(cachep->gfpflags & GFP_DMA))
@@ -1779,12 +1779,12 @@
  * Grow (by 1) the number of slabs within a cache.  This is called by
  * kmem_cache_alloc() when there are no active objs left in a cache.
  */
-static int cache_grow (kmem_cache_t * cachep, int flags, int nodeid)
+static int cache_grow (kmem_cache_t * cachep, unsigned int __nocast flags, int 
nodeid)
 {
        struct slab     *slabp;
        void            *objp;
        size_t           offset;
-       int              local_flags;
+       unsigned int     local_flags;
        unsigned long    ctor_flags;
 
        /* Be lazy and only check for valid flags here,
@@ -1982,7 +1982,7 @@
 #define check_slabp(x,y) do { } while(0)
 #endif
 
-static void* cache_alloc_refill(kmem_cache_t* cachep, int flags)
+static void* cache_alloc_refill(kmem_cache_t* cachep, unsigned int __nocast 
flags)
 {
        int batchcount;
        struct kmem_list3 *l3;
@@ -2079,7 +2079,7 @@
 }
 
 static inline void
-cache_alloc_debugcheck_before(kmem_cache_t *cachep, int flags)
+cache_alloc_debugcheck_before(kmem_cache_t *cachep, unsigned int __nocast 
flags)
 {
        might_sleep_if(flags & __GFP_WAIT);
 #if DEBUG
@@ -2134,7 +2134,7 @@
 #endif
 
 
-static inline void * __cache_alloc (kmem_cache_t *cachep, int flags)
+static inline void * __cache_alloc (kmem_cache_t *cachep, unsigned int 
__nocast flags)
 {
        unsigned long save_flags;
        void* objp;
@@ -2296,7 +2296,7 @@
  * Allocate an object from this cache.  The flags are only relevant
  * if the cache has no available objects.
  */
-void * kmem_cache_alloc (kmem_cache_t *cachep, int flags)
+void * kmem_cache_alloc (kmem_cache_t *cachep, unsigned int __nocast flags)
 {
        return __cache_alloc(cachep, flags);
 }
@@ -2453,7 +2453,7 @@
  * platforms.  For example, on i386, it means that the memory must come
  * from the first 16MB.
  */
-void * __kmalloc (size_t size, int flags)
+void * __kmalloc (size_t size, unsigned int __nocast flags)
 {
        struct cache_sizes *csizep = malloc_sizes;
 
@@ -2545,7 +2545,7 @@
  * @size: element size.
  * @flags: the type of memory to allocate.
  */
-void *kcalloc(size_t n, size_t size, int flags)
+void *kcalloc(size_t n, size_t size, unsigned int __nocast flags)
 {
        void *ret = NULL;
 
diff -Nru a/mm/vmalloc.c b/mm/vmalloc.c
--- a/mm/vmalloc.c      2005-03-28 21:06:08 -08:00
+++ b/mm/vmalloc.c      2005-03-28 21:06:08 -08:00
@@ -389,7 +389,7 @@
 
 EXPORT_SYMBOL(vmap);
 
-void *__vmalloc_area(struct vm_struct *area, int gfp_mask, pgprot_t prot)
+void *__vmalloc_area(struct vm_struct *area, unsigned int __nocast gfp_mask, 
pgprot_t prot)
 {
        struct page **pages;
        unsigned int nr_pages, array_size, i;
@@ -440,7 +440,7 @@
  *     allocator with @gfp_mask flags.  Map them into contiguous
  *     kernel virtual space, using a pagetable protection of @prot.
  */
-void *__vmalloc(unsigned long size, int gfp_mask, pgprot_t prot)
+void *__vmalloc(unsigned long size, unsigned int __nocast gfp_mask, pgprot_t 
prot)
 {
        struct vm_struct *area;
 
-
To unsubscribe from this list: send the line "unsubscribe bk-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to