mirror of
https://github.com/adulau/aha.git
synced 2024-12-27 11:16:11 +00:00
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm: dlm: always use GFP_NOFS
This commit is contained in:
commit
02412f49f6
14 changed files with 46 additions and 53 deletions
|
@ -410,10 +410,10 @@ static struct config_group *make_cluster(struct config_group *g,
|
||||||
struct dlm_comms *cms = NULL;
|
struct dlm_comms *cms = NULL;
|
||||||
void *gps = NULL;
|
void *gps = NULL;
|
||||||
|
|
||||||
cl = kzalloc(sizeof(struct dlm_cluster), GFP_KERNEL);
|
cl = kzalloc(sizeof(struct dlm_cluster), GFP_NOFS);
|
||||||
gps = kcalloc(3, sizeof(struct config_group *), GFP_KERNEL);
|
gps = kcalloc(3, sizeof(struct config_group *), GFP_NOFS);
|
||||||
sps = kzalloc(sizeof(struct dlm_spaces), GFP_KERNEL);
|
sps = kzalloc(sizeof(struct dlm_spaces), GFP_NOFS);
|
||||||
cms = kzalloc(sizeof(struct dlm_comms), GFP_KERNEL);
|
cms = kzalloc(sizeof(struct dlm_comms), GFP_NOFS);
|
||||||
|
|
||||||
if (!cl || !gps || !sps || !cms)
|
if (!cl || !gps || !sps || !cms)
|
||||||
goto fail;
|
goto fail;
|
||||||
|
@ -482,9 +482,9 @@ static struct config_group *make_space(struct config_group *g, const char *name)
|
||||||
struct dlm_nodes *nds = NULL;
|
struct dlm_nodes *nds = NULL;
|
||||||
void *gps = NULL;
|
void *gps = NULL;
|
||||||
|
|
||||||
sp = kzalloc(sizeof(struct dlm_space), GFP_KERNEL);
|
sp = kzalloc(sizeof(struct dlm_space), GFP_NOFS);
|
||||||
gps = kcalloc(2, sizeof(struct config_group *), GFP_KERNEL);
|
gps = kcalloc(2, sizeof(struct config_group *), GFP_NOFS);
|
||||||
nds = kzalloc(sizeof(struct dlm_nodes), GFP_KERNEL);
|
nds = kzalloc(sizeof(struct dlm_nodes), GFP_NOFS);
|
||||||
|
|
||||||
if (!sp || !gps || !nds)
|
if (!sp || !gps || !nds)
|
||||||
goto fail;
|
goto fail;
|
||||||
|
@ -536,7 +536,7 @@ static struct config_item *make_comm(struct config_group *g, const char *name)
|
||||||
{
|
{
|
||||||
struct dlm_comm *cm;
|
struct dlm_comm *cm;
|
||||||
|
|
||||||
cm = kzalloc(sizeof(struct dlm_comm), GFP_KERNEL);
|
cm = kzalloc(sizeof(struct dlm_comm), GFP_NOFS);
|
||||||
if (!cm)
|
if (!cm)
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
|
||||||
|
@ -569,7 +569,7 @@ static struct config_item *make_node(struct config_group *g, const char *name)
|
||||||
struct dlm_space *sp = config_item_to_space(g->cg_item.ci_parent);
|
struct dlm_space *sp = config_item_to_space(g->cg_item.ci_parent);
|
||||||
struct dlm_node *nd;
|
struct dlm_node *nd;
|
||||||
|
|
||||||
nd = kzalloc(sizeof(struct dlm_node), GFP_KERNEL);
|
nd = kzalloc(sizeof(struct dlm_node), GFP_NOFS);
|
||||||
if (!nd)
|
if (!nd)
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
|
||||||
|
@ -705,7 +705,7 @@ static ssize_t comm_addr_write(struct dlm_comm *cm, const char *buf, size_t len)
|
||||||
if (cm->addr_count >= DLM_MAX_ADDR_COUNT)
|
if (cm->addr_count >= DLM_MAX_ADDR_COUNT)
|
||||||
return -ENOSPC;
|
return -ENOSPC;
|
||||||
|
|
||||||
addr = kzalloc(sizeof(*addr), GFP_KERNEL);
|
addr = kzalloc(sizeof(*addr), GFP_NOFS);
|
||||||
if (!addr)
|
if (!addr)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
@ -868,7 +868,7 @@ int dlm_nodeid_list(char *lsname, int **ids_out, int *ids_count_out,
|
||||||
|
|
||||||
ids_count = sp->members_count;
|
ids_count = sp->members_count;
|
||||||
|
|
||||||
ids = kcalloc(ids_count, sizeof(int), GFP_KERNEL);
|
ids = kcalloc(ids_count, sizeof(int), GFP_NOFS);
|
||||||
if (!ids) {
|
if (!ids) {
|
||||||
rv = -ENOMEM;
|
rv = -ENOMEM;
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -886,7 +886,7 @@ int dlm_nodeid_list(char *lsname, int **ids_out, int *ids_count_out,
|
||||||
if (!new_count)
|
if (!new_count)
|
||||||
goto out_ids;
|
goto out_ids;
|
||||||
|
|
||||||
new = kcalloc(new_count, sizeof(int), GFP_KERNEL);
|
new = kcalloc(new_count, sizeof(int), GFP_NOFS);
|
||||||
if (!new) {
|
if (!new) {
|
||||||
kfree(ids);
|
kfree(ids);
|
||||||
rv = -ENOMEM;
|
rv = -ENOMEM;
|
||||||
|
|
|
@ -404,7 +404,7 @@ static void *table_seq_start(struct seq_file *seq, loff_t *pos)
|
||||||
if (bucket >= ls->ls_rsbtbl_size)
|
if (bucket >= ls->ls_rsbtbl_size)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
ri = kzalloc(sizeof(struct rsbtbl_iter), GFP_KERNEL);
|
ri = kzalloc(sizeof(struct rsbtbl_iter), GFP_NOFS);
|
||||||
if (!ri)
|
if (!ri)
|
||||||
return NULL;
|
return NULL;
|
||||||
if (n == 0)
|
if (n == 0)
|
||||||
|
|
|
@ -49,8 +49,7 @@ static struct dlm_direntry *get_free_de(struct dlm_ls *ls, int len)
|
||||||
spin_unlock(&ls->ls_recover_list_lock);
|
spin_unlock(&ls->ls_recover_list_lock);
|
||||||
|
|
||||||
if (!found)
|
if (!found)
|
||||||
de = kzalloc(sizeof(struct dlm_direntry) + len,
|
de = kzalloc(sizeof(struct dlm_direntry) + len, GFP_NOFS);
|
||||||
ls->ls_allocation);
|
|
||||||
return de;
|
return de;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -212,7 +211,7 @@ int dlm_recover_directory(struct dlm_ls *ls)
|
||||||
|
|
||||||
dlm_dir_clear(ls);
|
dlm_dir_clear(ls);
|
||||||
|
|
||||||
last_name = kmalloc(DLM_RESNAME_MAXLEN, ls->ls_allocation);
|
last_name = kmalloc(DLM_RESNAME_MAXLEN, GFP_NOFS);
|
||||||
if (!last_name)
|
if (!last_name)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
|
@ -323,7 +322,7 @@ static int get_entry(struct dlm_ls *ls, int nodeid, char *name,
|
||||||
if (namelen > DLM_RESNAME_MAXLEN)
|
if (namelen > DLM_RESNAME_MAXLEN)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
de = kzalloc(sizeof(struct dlm_direntry) + namelen, ls->ls_allocation);
|
de = kzalloc(sizeof(struct dlm_direntry) + namelen, GFP_NOFS);
|
||||||
if (!de)
|
if (!de)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
|
|
@ -473,7 +473,6 @@ struct dlm_ls {
|
||||||
int ls_low_nodeid;
|
int ls_low_nodeid;
|
||||||
int ls_total_weight;
|
int ls_total_weight;
|
||||||
int *ls_node_array;
|
int *ls_node_array;
|
||||||
gfp_t ls_allocation;
|
|
||||||
|
|
||||||
struct dlm_rsb ls_stub_rsb; /* for returning errors */
|
struct dlm_rsb ls_stub_rsb; /* for returning errors */
|
||||||
struct dlm_lkb ls_stub_lkb; /* for returning errors */
|
struct dlm_lkb ls_stub_lkb; /* for returning errors */
|
||||||
|
|
|
@ -2689,7 +2689,7 @@ static int _create_message(struct dlm_ls *ls, int mb_len,
|
||||||
pass into lowcomms_commit and a message buffer (mb) that we
|
pass into lowcomms_commit and a message buffer (mb) that we
|
||||||
write our data into */
|
write our data into */
|
||||||
|
|
||||||
mh = dlm_lowcomms_get_buffer(to_nodeid, mb_len, ls->ls_allocation, &mb);
|
mh = dlm_lowcomms_get_buffer(to_nodeid, mb_len, GFP_NOFS, &mb);
|
||||||
if (!mh)
|
if (!mh)
|
||||||
return -ENOBUFS;
|
return -ENOBUFS;
|
||||||
|
|
||||||
|
@ -4512,7 +4512,7 @@ int dlm_user_request(struct dlm_ls *ls, struct dlm_user_args *ua,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & DLM_LKF_VALBLK) {
|
if (flags & DLM_LKF_VALBLK) {
|
||||||
ua->lksb.sb_lvbptr = kzalloc(DLM_USER_LVB_LEN, GFP_KERNEL);
|
ua->lksb.sb_lvbptr = kzalloc(DLM_USER_LVB_LEN, GFP_NOFS);
|
||||||
if (!ua->lksb.sb_lvbptr) {
|
if (!ua->lksb.sb_lvbptr) {
|
||||||
kfree(ua);
|
kfree(ua);
|
||||||
__put_lkb(ls, lkb);
|
__put_lkb(ls, lkb);
|
||||||
|
@ -4582,7 +4582,7 @@ int dlm_user_convert(struct dlm_ls *ls, struct dlm_user_args *ua_tmp,
|
||||||
ua = lkb->lkb_ua;
|
ua = lkb->lkb_ua;
|
||||||
|
|
||||||
if (flags & DLM_LKF_VALBLK && !ua->lksb.sb_lvbptr) {
|
if (flags & DLM_LKF_VALBLK && !ua->lksb.sb_lvbptr) {
|
||||||
ua->lksb.sb_lvbptr = kzalloc(DLM_USER_LVB_LEN, GFP_KERNEL);
|
ua->lksb.sb_lvbptr = kzalloc(DLM_USER_LVB_LEN, GFP_NOFS);
|
||||||
if (!ua->lksb.sb_lvbptr) {
|
if (!ua->lksb.sb_lvbptr) {
|
||||||
error = -ENOMEM;
|
error = -ENOMEM;
|
||||||
goto out_put;
|
goto out_put;
|
||||||
|
|
|
@ -430,7 +430,7 @@ static int new_lockspace(const char *name, int namelen, void **lockspace,
|
||||||
|
|
||||||
error = -ENOMEM;
|
error = -ENOMEM;
|
||||||
|
|
||||||
ls = kzalloc(sizeof(struct dlm_ls) + namelen, GFP_KERNEL);
|
ls = kzalloc(sizeof(struct dlm_ls) + namelen, GFP_NOFS);
|
||||||
if (!ls)
|
if (!ls)
|
||||||
goto out;
|
goto out;
|
||||||
memcpy(ls->ls_name, name, namelen);
|
memcpy(ls->ls_name, name, namelen);
|
||||||
|
@ -443,11 +443,6 @@ static int new_lockspace(const char *name, int namelen, void **lockspace,
|
||||||
if (flags & DLM_LSFL_TIMEWARN)
|
if (flags & DLM_LSFL_TIMEWARN)
|
||||||
set_bit(LSFL_TIMEWARN, &ls->ls_flags);
|
set_bit(LSFL_TIMEWARN, &ls->ls_flags);
|
||||||
|
|
||||||
if (flags & DLM_LSFL_FS)
|
|
||||||
ls->ls_allocation = GFP_NOFS;
|
|
||||||
else
|
|
||||||
ls->ls_allocation = GFP_KERNEL;
|
|
||||||
|
|
||||||
/* ls_exflags are forced to match among nodes, and we don't
|
/* ls_exflags are forced to match among nodes, and we don't
|
||||||
need to require all nodes to have some flags set */
|
need to require all nodes to have some flags set */
|
||||||
ls->ls_exflags = (flags & ~(DLM_LSFL_TIMEWARN | DLM_LSFL_FS |
|
ls->ls_exflags = (flags & ~(DLM_LSFL_TIMEWARN | DLM_LSFL_FS |
|
||||||
|
@ -456,7 +451,7 @@ static int new_lockspace(const char *name, int namelen, void **lockspace,
|
||||||
size = dlm_config.ci_rsbtbl_size;
|
size = dlm_config.ci_rsbtbl_size;
|
||||||
ls->ls_rsbtbl_size = size;
|
ls->ls_rsbtbl_size = size;
|
||||||
|
|
||||||
ls->ls_rsbtbl = kmalloc(sizeof(struct dlm_rsbtable) * size, GFP_KERNEL);
|
ls->ls_rsbtbl = kmalloc(sizeof(struct dlm_rsbtable) * size, GFP_NOFS);
|
||||||
if (!ls->ls_rsbtbl)
|
if (!ls->ls_rsbtbl)
|
||||||
goto out_lsfree;
|
goto out_lsfree;
|
||||||
for (i = 0; i < size; i++) {
|
for (i = 0; i < size; i++) {
|
||||||
|
@ -468,7 +463,7 @@ static int new_lockspace(const char *name, int namelen, void **lockspace,
|
||||||
size = dlm_config.ci_lkbtbl_size;
|
size = dlm_config.ci_lkbtbl_size;
|
||||||
ls->ls_lkbtbl_size = size;
|
ls->ls_lkbtbl_size = size;
|
||||||
|
|
||||||
ls->ls_lkbtbl = kmalloc(sizeof(struct dlm_lkbtable) * size, GFP_KERNEL);
|
ls->ls_lkbtbl = kmalloc(sizeof(struct dlm_lkbtable) * size, GFP_NOFS);
|
||||||
if (!ls->ls_lkbtbl)
|
if (!ls->ls_lkbtbl)
|
||||||
goto out_rsbfree;
|
goto out_rsbfree;
|
||||||
for (i = 0; i < size; i++) {
|
for (i = 0; i < size; i++) {
|
||||||
|
@ -480,7 +475,7 @@ static int new_lockspace(const char *name, int namelen, void **lockspace,
|
||||||
size = dlm_config.ci_dirtbl_size;
|
size = dlm_config.ci_dirtbl_size;
|
||||||
ls->ls_dirtbl_size = size;
|
ls->ls_dirtbl_size = size;
|
||||||
|
|
||||||
ls->ls_dirtbl = kmalloc(sizeof(struct dlm_dirtable) * size, GFP_KERNEL);
|
ls->ls_dirtbl = kmalloc(sizeof(struct dlm_dirtable) * size, GFP_NOFS);
|
||||||
if (!ls->ls_dirtbl)
|
if (!ls->ls_dirtbl)
|
||||||
goto out_lkbfree;
|
goto out_lkbfree;
|
||||||
for (i = 0; i < size; i++) {
|
for (i = 0; i < size; i++) {
|
||||||
|
@ -527,7 +522,7 @@ static int new_lockspace(const char *name, int namelen, void **lockspace,
|
||||||
mutex_init(&ls->ls_requestqueue_mutex);
|
mutex_init(&ls->ls_requestqueue_mutex);
|
||||||
mutex_init(&ls->ls_clear_proc_locks);
|
mutex_init(&ls->ls_clear_proc_locks);
|
||||||
|
|
||||||
ls->ls_recover_buf = kmalloc(dlm_config.ci_buffer_size, GFP_KERNEL);
|
ls->ls_recover_buf = kmalloc(dlm_config.ci_buffer_size, GFP_NOFS);
|
||||||
if (!ls->ls_recover_buf)
|
if (!ls->ls_recover_buf)
|
||||||
goto out_dirfree;
|
goto out_dirfree;
|
||||||
|
|
||||||
|
|
|
@ -1060,7 +1060,7 @@ static void init_local(void)
|
||||||
if (dlm_our_addr(&sas, i))
|
if (dlm_our_addr(&sas, i))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
addr = kmalloc(sizeof(*addr), GFP_KERNEL);
|
addr = kmalloc(sizeof(*addr), GFP_NOFS);
|
||||||
if (!addr)
|
if (!addr)
|
||||||
break;
|
break;
|
||||||
memcpy(addr, &sas, sizeof(*addr));
|
memcpy(addr, &sas, sizeof(*addr));
|
||||||
|
@ -1099,7 +1099,7 @@ static int sctp_listen_for_all(void)
|
||||||
struct sockaddr_storage localaddr;
|
struct sockaddr_storage localaddr;
|
||||||
struct sctp_event_subscribe subscribe;
|
struct sctp_event_subscribe subscribe;
|
||||||
int result = -EINVAL, num = 1, i, addr_len;
|
int result = -EINVAL, num = 1, i, addr_len;
|
||||||
struct connection *con = nodeid2con(0, GFP_KERNEL);
|
struct connection *con = nodeid2con(0, GFP_NOFS);
|
||||||
int bufsize = NEEDED_RMEM;
|
int bufsize = NEEDED_RMEM;
|
||||||
|
|
||||||
if (!con)
|
if (!con)
|
||||||
|
@ -1171,7 +1171,7 @@ out:
|
||||||
static int tcp_listen_for_all(void)
|
static int tcp_listen_for_all(void)
|
||||||
{
|
{
|
||||||
struct socket *sock = NULL;
|
struct socket *sock = NULL;
|
||||||
struct connection *con = nodeid2con(0, GFP_KERNEL);
|
struct connection *con = nodeid2con(0, GFP_NOFS);
|
||||||
int result = -EINVAL;
|
int result = -EINVAL;
|
||||||
|
|
||||||
if (!con)
|
if (!con)
|
||||||
|
|
|
@ -48,7 +48,7 @@ static int dlm_add_member(struct dlm_ls *ls, int nodeid)
|
||||||
struct dlm_member *memb;
|
struct dlm_member *memb;
|
||||||
int w, error;
|
int w, error;
|
||||||
|
|
||||||
memb = kzalloc(sizeof(struct dlm_member), ls->ls_allocation);
|
memb = kzalloc(sizeof(struct dlm_member), GFP_NOFS);
|
||||||
if (!memb)
|
if (!memb)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
@ -143,7 +143,7 @@ static void make_member_array(struct dlm_ls *ls)
|
||||||
|
|
||||||
ls->ls_total_weight = total;
|
ls->ls_total_weight = total;
|
||||||
|
|
||||||
array = kmalloc(sizeof(int) * total, ls->ls_allocation);
|
array = kmalloc(sizeof(int) * total, GFP_NOFS);
|
||||||
if (!array)
|
if (!array)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -226,7 +226,7 @@ int dlm_recover_members(struct dlm_ls *ls, struct dlm_recover *rv, int *neg_out)
|
||||||
continue;
|
continue;
|
||||||
log_debug(ls, "new nodeid %d is a re-added member", rv->new[i]);
|
log_debug(ls, "new nodeid %d is a re-added member", rv->new[i]);
|
||||||
|
|
||||||
memb = kzalloc(sizeof(struct dlm_member), ls->ls_allocation);
|
memb = kzalloc(sizeof(struct dlm_member), GFP_NOFS);
|
||||||
if (!memb)
|
if (!memb)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
memb->nodeid = rv->new[i];
|
memb->nodeid = rv->new[i];
|
||||||
|
@ -341,7 +341,7 @@ int dlm_ls_start(struct dlm_ls *ls)
|
||||||
int *ids = NULL, *new = NULL;
|
int *ids = NULL, *new = NULL;
|
||||||
int error, ids_count = 0, new_count = 0;
|
int error, ids_count = 0, new_count = 0;
|
||||||
|
|
||||||
rv = kzalloc(sizeof(struct dlm_recover), ls->ls_allocation);
|
rv = kzalloc(sizeof(struct dlm_recover), GFP_NOFS);
|
||||||
if (!rv)
|
if (!rv)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
|
|
@ -39,7 +39,7 @@ char *dlm_allocate_lvb(struct dlm_ls *ls)
|
||||||
{
|
{
|
||||||
char *p;
|
char *p;
|
||||||
|
|
||||||
p = kzalloc(ls->ls_lvblen, ls->ls_allocation);
|
p = kzalloc(ls->ls_lvblen, GFP_NOFS);
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ struct dlm_rsb *dlm_allocate_rsb(struct dlm_ls *ls, int namelen)
|
||||||
|
|
||||||
DLM_ASSERT(namelen <= DLM_RESNAME_MAXLEN,);
|
DLM_ASSERT(namelen <= DLM_RESNAME_MAXLEN,);
|
||||||
|
|
||||||
r = kzalloc(sizeof(*r) + namelen, ls->ls_allocation);
|
r = kzalloc(sizeof(*r) + namelen, GFP_NOFS);
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +72,7 @@ struct dlm_lkb *dlm_allocate_lkb(struct dlm_ls *ls)
|
||||||
{
|
{
|
||||||
struct dlm_lkb *lkb;
|
struct dlm_lkb *lkb;
|
||||||
|
|
||||||
lkb = kmem_cache_zalloc(lkb_cache, ls->ls_allocation);
|
lkb = kmem_cache_zalloc(lkb_cache, GFP_NOFS);
|
||||||
return lkb;
|
return lkb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@ static int prepare_data(u8 cmd, struct sk_buff **skbp, size_t size)
|
||||||
struct sk_buff *skb;
|
struct sk_buff *skb;
|
||||||
void *data;
|
void *data;
|
||||||
|
|
||||||
skb = genlmsg_new(size, GFP_KERNEL);
|
skb = genlmsg_new(size, GFP_NOFS);
|
||||||
if (!skb)
|
if (!skb)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ int dlm_posix_lock(dlm_lockspace_t *lockspace, u64 number, struct file *file,
|
||||||
if (!ls)
|
if (!ls)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
xop = kzalloc(sizeof(*xop), GFP_KERNEL);
|
xop = kzalloc(sizeof(*xop), GFP_NOFS);
|
||||||
if (!xop) {
|
if (!xop) {
|
||||||
rv = -ENOMEM;
|
rv = -ENOMEM;
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -211,7 +211,7 @@ int dlm_posix_unlock(dlm_lockspace_t *lockspace, u64 number, struct file *file,
|
||||||
if (!ls)
|
if (!ls)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
op = kzalloc(sizeof(*op), GFP_KERNEL);
|
op = kzalloc(sizeof(*op), GFP_NOFS);
|
||||||
if (!op) {
|
if (!op) {
|
||||||
rv = -ENOMEM;
|
rv = -ENOMEM;
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -266,7 +266,7 @@ int dlm_posix_get(dlm_lockspace_t *lockspace, u64 number, struct file *file,
|
||||||
if (!ls)
|
if (!ls)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
op = kzalloc(sizeof(*op), GFP_KERNEL);
|
op = kzalloc(sizeof(*op), GFP_NOFS);
|
||||||
if (!op) {
|
if (!op) {
|
||||||
rv = -ENOMEM;
|
rv = -ENOMEM;
|
||||||
goto out;
|
goto out;
|
||||||
|
|
|
@ -38,7 +38,7 @@ static int create_rcom(struct dlm_ls *ls, int to_nodeid, int type, int len,
|
||||||
char *mb;
|
char *mb;
|
||||||
int mb_len = sizeof(struct dlm_rcom) + len;
|
int mb_len = sizeof(struct dlm_rcom) + len;
|
||||||
|
|
||||||
mh = dlm_lowcomms_get_buffer(to_nodeid, mb_len, ls->ls_allocation, &mb);
|
mh = dlm_lowcomms_get_buffer(to_nodeid, mb_len, GFP_NOFS, &mb);
|
||||||
if (!mh) {
|
if (!mh) {
|
||||||
log_print("create_rcom to %d type %d len %d ENOBUFS",
|
log_print("create_rcom to %d type %d len %d ENOBUFS",
|
||||||
to_nodeid, type, len);
|
to_nodeid, type, len);
|
||||||
|
|
|
@ -35,7 +35,7 @@ void dlm_add_requestqueue(struct dlm_ls *ls, int nodeid, struct dlm_message *ms)
|
||||||
struct rq_entry *e;
|
struct rq_entry *e;
|
||||||
int length = ms->m_header.h_length - sizeof(struct dlm_message);
|
int length = ms->m_header.h_length - sizeof(struct dlm_message);
|
||||||
|
|
||||||
e = kmalloc(sizeof(struct rq_entry) + length, ls->ls_allocation);
|
e = kmalloc(sizeof(struct rq_entry) + length, GFP_NOFS);
|
||||||
if (!e) {
|
if (!e) {
|
||||||
log_print("dlm_add_requestqueue: out of memory len %d", length);
|
log_print("dlm_add_requestqueue: out of memory len %d", length);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -267,7 +267,7 @@ static int device_user_lock(struct dlm_user_proc *proc,
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
ua = kzalloc(sizeof(struct dlm_user_args), GFP_KERNEL);
|
ua = kzalloc(sizeof(struct dlm_user_args), GFP_NOFS);
|
||||||
if (!ua)
|
if (!ua)
|
||||||
goto out;
|
goto out;
|
||||||
ua->proc = proc;
|
ua->proc = proc;
|
||||||
|
@ -307,7 +307,7 @@ static int device_user_unlock(struct dlm_user_proc *proc,
|
||||||
if (!ls)
|
if (!ls)
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
|
|
||||||
ua = kzalloc(sizeof(struct dlm_user_args), GFP_KERNEL);
|
ua = kzalloc(sizeof(struct dlm_user_args), GFP_NOFS);
|
||||||
if (!ua)
|
if (!ua)
|
||||||
goto out;
|
goto out;
|
||||||
ua->proc = proc;
|
ua->proc = proc;
|
||||||
|
@ -352,7 +352,7 @@ static int dlm_device_register(struct dlm_ls *ls, char *name)
|
||||||
|
|
||||||
error = -ENOMEM;
|
error = -ENOMEM;
|
||||||
len = strlen(name) + strlen(name_prefix) + 2;
|
len = strlen(name) + strlen(name_prefix) + 2;
|
||||||
ls->ls_device.name = kzalloc(len, GFP_KERNEL);
|
ls->ls_device.name = kzalloc(len, GFP_NOFS);
|
||||||
if (!ls->ls_device.name)
|
if (!ls->ls_device.name)
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
|
@ -520,7 +520,7 @@ static ssize_t device_write(struct file *file, const char __user *buf,
|
||||||
#endif
|
#endif
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
kbuf = kzalloc(count + 1, GFP_KERNEL);
|
kbuf = kzalloc(count + 1, GFP_NOFS);
|
||||||
if (!kbuf)
|
if (!kbuf)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
@ -546,7 +546,7 @@ static ssize_t device_write(struct file *file, const char __user *buf,
|
||||||
|
|
||||||
/* add 1 after namelen so that the name string is terminated */
|
/* add 1 after namelen so that the name string is terminated */
|
||||||
kbuf = kzalloc(sizeof(struct dlm_write_request) + namelen + 1,
|
kbuf = kzalloc(sizeof(struct dlm_write_request) + namelen + 1,
|
||||||
GFP_KERNEL);
|
GFP_NOFS);
|
||||||
if (!kbuf) {
|
if (!kbuf) {
|
||||||
kfree(k32buf);
|
kfree(k32buf);
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
@ -648,7 +648,7 @@ static int device_open(struct inode *inode, struct file *file)
|
||||||
if (!ls)
|
if (!ls)
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
|
|
||||||
proc = kzalloc(sizeof(struct dlm_user_proc), GFP_KERNEL);
|
proc = kzalloc(sizeof(struct dlm_user_proc), GFP_NOFS);
|
||||||
if (!proc) {
|
if (!proc) {
|
||||||
dlm_put_lockspace(ls);
|
dlm_put_lockspace(ls);
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
Loading…
Reference in a new issue