irqsave GFP_ATOMIC should be used in irq context
This commit is contained in:
parent
feabe3ecac
commit
3843f8c931
|
@ -13,8 +13,9 @@ default: $(TARGETS)
|
|||
|
||||
all: $(TARGETS)
|
||||
|
||||
Rules.make: $(KDIR)/Rules.make
|
||||
Rules.make: $(KDIR)/Rules.make Rules.make.ext
|
||||
cp -pf $(KDIR)/Rules.make .
|
||||
cat Rules.make.ext >> Rules.make
|
||||
|
||||
.config: $(KDIR)/.config
|
||||
cp -pf $(KDIR)/.config .
|
||||
|
@ -42,3 +43,6 @@ $(TARGET):
|
|||
install: $(TARGETS)
|
||||
$(MAKE) -f Makefile KDIR=$(KDIR) TARGETDIR=$(TARGETDIR) install_mod
|
||||
install newinclude/linux/hisaxif.h /usr/include/linux
|
||||
|
||||
modlist:
|
||||
$(MAKE) -f Makefile KDIR=$(KDIR) TARGETDIR=$(TARGETDIR) modlist
|
||||
|
|
|
@ -6,7 +6,6 @@ KDIR = /usr/src/linux
|
|||
DESTDIR =
|
||||
TARGET =
|
||||
TARGETS := $(TARGET)
|
||||
TARGETMODDIR = "../misc"
|
||||
|
||||
default: $(TARGETS)
|
||||
|
||||
|
@ -34,6 +33,9 @@ newhisax: $(TARGETDIR) newhisax_mod
|
|||
$(MAKE) -C $(TARGETDIR) CFLAGS="$(CFLAGS)" MAKING_MODULES=1 modules
|
||||
|
||||
ifeq ($(PATCHLEVEL), 2)
|
||||
|
||||
TARGETMODDIR = misc
|
||||
|
||||
install: install_mod
|
||||
|
||||
install_mod: modules_install
|
||||
|
@ -43,6 +45,9 @@ newhisax_mod:
|
|||
mkdir -p modules
|
||||
|
||||
else
|
||||
|
||||
TARGETMODDIR = ../misc
|
||||
|
||||
newhisax_mod:
|
||||
echo patchlevel $(PATCHLEVEL)
|
||||
|
||||
|
@ -55,3 +60,7 @@ $(MODLIB)/$(TARGETMODDIR):
|
|||
mkdir -p $(MODLIB)/$(TARGETMODDIR)
|
||||
|
||||
endif
|
||||
|
||||
modlist: $(MODLIB)/$(TARGETMODDIR)
|
||||
$(MAKE) -C $(TARGETDIR) MOD_DESTDIR=$(TARGETMODDIR) mod_list
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ int contrConstr(Contr_t *contr, hisaxstack_t *st, hisax_pid_t *pid, hisaxobject_
|
|||
return(-ENOPROTOOPT);
|
||||
}
|
||||
while(cst) {
|
||||
if (!(binst = kmalloc(sizeof(BInst_t), GFP_KERNEL))) {
|
||||
if (!(binst = kmalloc(sizeof(BInst_t), GFP_ATOMIC))) {
|
||||
printk(KERN_ERR "no mem for Binst\n");
|
||||
int_error();
|
||||
return -ENOMEM;
|
||||
|
@ -147,7 +147,7 @@ void contrRegisterAppl(Contr_t *contr, __u16 ApplId, capi_register_params *rp)
|
|||
int_error();
|
||||
return;
|
||||
}
|
||||
appl = kmalloc(sizeof(Appl_t), GFP_KERNEL);
|
||||
appl = kmalloc(sizeof(Appl_t), GFP_ATOMIC);
|
||||
if (!appl) {
|
||||
int_error();
|
||||
return;
|
||||
|
@ -394,7 +394,7 @@ BInst_t *contrSelChannel(Contr_t *contr, int channr)
|
|||
if (!cst)
|
||||
return(NULL);
|
||||
while(cst) {
|
||||
if (!(binst = kmalloc(sizeof(BInst_t), GFP_KERNEL))) {
|
||||
if (!(binst = kmalloc(sizeof(BInst_t), GFP_ATOMIC))) {
|
||||
printk(KERN_ERR "no mem for Binst\n");
|
||||
int_error();
|
||||
return(NULL);
|
||||
|
|
|
@ -216,7 +216,7 @@ isar_load_firmware(bchannel_t *bch, u_char *buf, int size)
|
|||
cnt = 0;
|
||||
/* disable ISAR IRQ */
|
||||
bch->BC_Write_Reg(bch->inst.data, 0, ISAR_IRQBIT, 0);
|
||||
if (!(msg = kmalloc(256, GFP_KERNEL))) {
|
||||
if (!(msg = kmalloc(256, GFP_ATOMIC))) {
|
||||
printk(KERN_ERR"isar_load_firmware no buffer\n");
|
||||
bch->inst.unlock(bch->inst.data);
|
||||
return (1);
|
||||
|
|
|
@ -801,7 +801,7 @@ dev_init_timer(hisaxdevice_t *dev, iframe_t *iff)
|
|||
|
||||
ht = get_devtimer(dev, iff->addr);
|
||||
if (!ht) {
|
||||
ht = kmalloc(sizeof(hisaxtimer_t), GFP_KERNEL);
|
||||
ht = kmalloc(sizeof(hisaxtimer_t), GFP_ATOMIC);
|
||||
if (!ht)
|
||||
return(-ENOMEM);
|
||||
ht->prev = NULL;
|
||||
|
|
Loading…
Reference in New Issue