#define PORTAL_VMALLOC_SIZE 16384
-#ifndef GFP_MEMALLOC
-#define GFP_MEMALLOC 0
-#endif
-
#define PORTAL_ALLOC_GFP(ptr, size, mask) \
do { \
LASSERT (!in_interrupt()); \
} while (0)
#define PORTAL_ALLOC(ptr, size) \
- PORTAL_ALLOC_GFP(ptr, size, (GFP_KERNEL | GFP_MEMALLOC))
+ PORTAL_ALLOC_GFP(ptr, size, GFP_NOFS)
#define PORTAL_ALLOC_ATOMIC(ptr, size) \
- PORTAL_ALLOC_GFP(ptr, size, (GFP_ATOMIC | GFP_MEMALLOC))
+ PORTAL_ALLOC_GFP(ptr, size, GFP_ATOMIC)
#define PORTAL_FREE(ptr, size) \
do { \
s, (ptr), atomic_read(&portal_kmemory)); \
} while (0)
-#ifndef SLAB_MEMALLOC
-#define SLAB_MEMALLOC 0
-#endif
-
#define PORTAL_SLAB_ALLOC(ptr, slab, size) \
do { \
LASSERT(!in_interrupt()); \
- (ptr) = kmem_cache_alloc((slab), (SLAB_KERNEL | SLAB_MEMALLOC)); \
+ (ptr) = kmem_cache_alloc((slab), SLAB_NOFS); \
if ((ptr) == NULL) { \
CERROR("PORTALS: out of memory at %s:%d (tried to alloc" \
" '" #ptr "' from slab '" #slab "')\n", __FILE__, \
kportal_daemonize (name);
kportal_blockallsigs ();
- current->flags |= PF_MEMALLOC;
-
#if (CONFIG_SMP && CPU_AFFINITY)
if ((cpu_online_map & (1 << id)) != 0) {
#if 1
int option;
struct linger linger;
- sock->sk->allocation = GFP_MEMALLOC;
+ sock->sk->allocation = GFP_NOFS;
/* Ensure this socket aborts active sends immediately when we close
* it. */
kportal_daemonize (name);
kportal_blockallsigs ();
- current->flags |= PF_MEMALLOC;
-
spin_lock_irqsave (&ksocknal_data.ksnd_autoconnectd_lock, flags);
while (!ksocknal_data.ksnd_shuttingdown) {
INIT_LIST_HEAD(&enomem_conns);
init_waitqueue_entry (&wait, current);
- current->flags |= PF_MEMALLOC;
-
spin_lock_irqsave (&ksocknal_data.ksnd_reaper_lock, flags);
while (!ksocknal_data.ksnd_shuttingdown) {
#define GFP_KERNEL 1
#define GFP_HIGHUSER 1
#define GFP_ATOMIC 1
-#define GFP_MEMALLOC 1
+#define GFP_NOFS 1
#define IS_ERR(a) (((a) && abs((int)(a)) < 500) ? 1 : 0)
#define PTR_ERR(a) ((int)(a))
#define ERR_PTR(a) ((void*)(a))
# endif
#endif /* __KERNEL__ */
-#ifndef GFP_MEMALLOC
-#define GFP_MEMALLOC 0
-#endif
-
extern atomic_t portal_kmemory;
#define OBD_ALLOC_GFP(ptr, size, gfp_mask) \
} while (0)
#ifndef OBD_GFP_MASK
-# define OBD_GFP_MASK (GFP_KERNEL | GFP_MEMALLOC)
+# define OBD_GFP_MASK GFP_NOFS
#endif
#define OBD_ALLOC(ptr, size) OBD_ALLOC_GFP(ptr, size, OBD_GFP_MASK)
} while (0)
#endif
-#ifndef SLAB_MEMALLOC
-#define SLAB_MEMALLOC 0
-#endif
-
/* we memset() the slab object to 0 when allocation succeeds, so DO NOT
* HAVE A CTOR THAT DOES ANYTHING. its work will be cleared here. we'd
* love to assert on that, but slab.c keeps kmem_cache_s all to itself. */
#define OBD_SLAB_ALLOC(ptr, slab, type, size) \
do { \
LASSERT(!in_interrupt()); \
- (ptr) = kmem_cache_alloc(slab, (type | SLAB_MEMALLOC)); \
+ (ptr) = kmem_cache_alloc(slab, (type)); \
if ((ptr) == NULL) { \
CERROR("slab-alloc of '"#ptr"' (%d bytes) failed at %s:%d\n", \
(int)(size), __FILE__, __LINE__); \
#define PORTAL_VMALLOC_SIZE 16384
-#ifndef GFP_MEMALLOC
-#define GFP_MEMALLOC 0
-#endif
-
#define PORTAL_ALLOC_GFP(ptr, size, mask) \
do { \
LASSERT (!in_interrupt()); \
} while (0)
#define PORTAL_ALLOC(ptr, size) \
- PORTAL_ALLOC_GFP(ptr, size, (GFP_KERNEL | GFP_MEMALLOC))
+ PORTAL_ALLOC_GFP(ptr, size, GFP_NOFS)
#define PORTAL_ALLOC_ATOMIC(ptr, size) \
- PORTAL_ALLOC_GFP(ptr, size, (GFP_ATOMIC | GFP_MEMALLOC))
+ PORTAL_ALLOC_GFP(ptr, size, GFP_ATOMIC)
#define PORTAL_FREE(ptr, size) \
do { \
s, (ptr), atomic_read(&portal_kmemory)); \
} while (0)
-#ifndef SLAB_MEMALLOC
-#define SLAB_MEMALLOC 0
-#endif
-
#define PORTAL_SLAB_ALLOC(ptr, slab, size) \
do { \
LASSERT(!in_interrupt()); \
- (ptr) = kmem_cache_alloc((slab), (SLAB_KERNEL | SLAB_MEMALLOC)); \
+ (ptr) = kmem_cache_alloc((slab), SLAB_NOFS); \
if ((ptr) == NULL) { \
CERROR("PORTALS: out of memory at %s:%d (tried to alloc" \
" '" #ptr "' from slab '" #slab "')\n", __FILE__, \
kportal_daemonize (name);
kportal_blockallsigs ();
- current->flags |= PF_MEMALLOC;
-
#if (CONFIG_SMP && CPU_AFFINITY)
if ((cpu_online_map & (1 << id)) != 0) {
#if 1
int option;
struct linger linger;
- sock->sk->allocation = GFP_MEMALLOC;
+ sock->sk->allocation = GFP_NOFS;
/* Ensure this socket aborts active sends immediately when we close
* it. */
kportal_daemonize (name);
kportal_blockallsigs ();
- current->flags |= PF_MEMALLOC;
-
spin_lock_irqsave (&ksocknal_data.ksnd_autoconnectd_lock, flags);
while (!ksocknal_data.ksnd_shuttingdown) {
INIT_LIST_HEAD(&enomem_conns);
init_waitqueue_entry (&wait, current);
- current->flags |= PF_MEMALLOC;
-
spin_lock_irqsave (&ksocknal_data.ksnd_reaper_lock, flags);
while (!ksocknal_data.ksnd_shuttingdown) {