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