* Re: swapper: page allocation failure. order:1, mode:0x20
[not found] <fa.hgi75u0.1cnmhaa@ifi.uio.no>
@ 2005-02-28 15:23 ` Benjamin L. Shi
2005-02-28 15:36 ` Signals/ Communication from kernel to user! Ravindra Nadgauda
2005-02-28 15:38 ` swapper: page allocation failure. order:1, mode:0x20 Bernd Schubert
0 siblings, 2 replies; 6+ messages in thread
From: Benjamin L. Shi @ 2005-02-28 15:23 UTC (permalink / raw)
To: Bernd Schubert; +Cc: Linux Kernel Mailing List
We've seen these, by adding the following tueables resolved the problem.
More specifically, the lower zone protection made the difference.
vm.vfs_cache_pressure=1000
vm.lower_zone_protection=100
vm.max_map_count = 32668
vm.min_free_kbytes = 10000
Bernd Schubert wrote:
> Oh no, not this page allocation problems again. In summer I already pos=
> ted
> problems with page allocation errors with 2.6.7, but to me it seemed th=
> at
> nobody cared. That time we got those problems every morning during the =
> cron
> jobs and our main file server always completely crashed.
> This time its our cluster master system and first happend after an upti=
> me
> of 89 days, kernel is 2.6.9. Besides of those messages, the system stil=
> l
> seems to run stable
>
> I really beg for help here, so please please please help me solving thi=
> s
> probem. What can I do to solve it?
>
> First a (dumb) question, what does 'page allocation failure' really m=
> ean?
> Is it some out of memory case?
>
>
> Thanks a lot in advance for any help,
> Bernd
^ permalink raw reply [flat|nested] 6+ messages in thread
* Signals/ Communication from kernel to user!
2005-02-28 15:23 ` swapper: page allocation failure. order:1, mode:0x20 Benjamin L. Shi
@ 2005-02-28 15:36 ` Ravindra Nadgauda
2005-02-28 16:48 ` Timothy R. Chavez
` (2 more replies)
2005-02-28 15:38 ` swapper: page allocation failure. order:1, mode:0x20 Bernd Schubert
1 sibling, 3 replies; 6+ messages in thread
From: Ravindra Nadgauda @ 2005-02-28 15:36 UTC (permalink / raw)
To: 'Linux Kernel Mailing List'
Hello,
We wanted to establish a communication from kernel module (possibly a
driver) to a user level process.
Wanted to know whether signals can be used for this purpose OR there any
other (better) methods of communication??
Regards,
Ravindra N.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: swapper: page allocation failure. order:1, mode:0x20
2005-02-28 15:23 ` swapper: page allocation failure. order:1, mode:0x20 Benjamin L. Shi
2005-02-28 15:36 ` Signals/ Communication from kernel to user! Ravindra Nadgauda
@ 2005-02-28 15:38 ` Bernd Schubert
1 sibling, 0 replies; 6+ messages in thread
From: Bernd Schubert @ 2005-02-28 15:38 UTC (permalink / raw)
To: Benjamin L. Shi; +Cc: Linux Kernel Mailing List
Hello Benjamin,
On Monday 28 February 2005 16:23, Benjamin L. Shi wrote:
> We've seen these, by adding the following tueables resolved the problem.
> More specifically, the lower zone protection made the difference.
>
> vm.vfs_cache_pressure=1000
> vm.lower_zone_protection=100
> vm.max_map_count = 32668
> vm.min_free_kbytes = 10000
>
many thanks, we will test this now and set those values on all of our 2.6.
systems.
Thanks a lot again,
Bernd
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Signals/ Communication from kernel to user!
2005-02-28 15:36 ` Signals/ Communication from kernel to user! Ravindra Nadgauda
@ 2005-02-28 16:48 ` Timothy R. Chavez
2005-02-28 19:13 ` Der Herr Hofrat
2005-02-28 21:17 ` Lee Revell
2 siblings, 0 replies; 6+ messages in thread
From: Timothy R. Chavez @ 2005-02-28 16:48 UTC (permalink / raw)
To: Ravindra Nadgauda; +Cc: Linux Kernel Mailing List
On Mon, 28 Feb 2005 21:06:57 +0530, Ravindra Nadgauda
<rnadgauda@velankani.com> wrote:
>
>
> Hello,
> We wanted to establish a communication from kernel module (possibly a
> driver) to a user level process.
>
> Wanted to know whether signals can be used for this purpose OR there any
> other (better) methods of communication??
Perhaps netlink? Here's an introduction: http://qos.ittc.ku.edu/netlink/html/
>
> Regards,
> Ravindra N.
--
- Timothy R. Chavez
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Signals/ Communication from kernel to user!
2005-02-28 15:36 ` Signals/ Communication from kernel to user! Ravindra Nadgauda
2005-02-28 16:48 ` Timothy R. Chavez
@ 2005-02-28 19:13 ` Der Herr Hofrat
2005-02-28 21:17 ` Lee Revell
2 siblings, 0 replies; 6+ messages in thread
From: Der Herr Hofrat @ 2005-02-28 19:13 UTC (permalink / raw)
To: Ravindra Nadgauda; +Cc: 'Linux Kernel Mailing List'
>
>
> Hello,
> We wanted to establish a communication from kernel module (possibly a
> driver) to a user level process.
>
> Wanted to know whether signals can be used for this purpose OR there any
> other (better) methods of communication??
>
a bit brute force but you can simply run through the task list and kick
the pid of your user-space app (example for 2.4 kernel):
hofrat
---snip---
/*
* Copywrite 2002 Der Herr Hofrat
* License GPL V2
* Author der.herr@hofr.at
*/
/*
* run through the task list of linux search for the passed pid and send it
* a SIGKILL . run as insmod pid=# to send process with pid # a kill signal
*/
#include <bits/signum.h> /* signal number macros SIGHUP etc. */
#include <linux/kernel.h> /* printk level */
#include <linux/module.h> /* kernel version etc. */
#include <linux/sched.h> /* task_struct */
MODULE_LICENSE("GPL v2");
MODULE_AUTHOR("Der Herr Hofrat");
MODULE_DESCRIPTION("Signal to a user-space app from a kernel module");
int pid=0;
MODULE_PARM(pid,"i");
int
ksignal(int pid,int signum)
{
struct task_struct *p;
/* run through the task list of linux until we find our pid */
for_each_task(p){
if(p->pid == pid){
printk("sending signal %d for pid %d\n",signum,(int)p->pid);
/* don't have a sig_info struct to send along - pass 0 */
return send_sig(signum,p,0);
}
}
/* did not find the requested pid */
return -1;
}
int
init_module(void)
{
/* send pid a SIGKILL */
ksignal(pid,SIGKILL);
return 0;
}
void
cleanup_module(void)
{
printk("out of here\n");
}
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Signals/ Communication from kernel to user!
2005-02-28 15:36 ` Signals/ Communication from kernel to user! Ravindra Nadgauda
2005-02-28 16:48 ` Timothy R. Chavez
2005-02-28 19:13 ` Der Herr Hofrat
@ 2005-02-28 21:17 ` Lee Revell
2 siblings, 0 replies; 6+ messages in thread
From: Lee Revell @ 2005-02-28 21:17 UTC (permalink / raw)
To: Ravindra Nadgauda; +Cc: 'Linux Kernel Mailing List'
On Mon, 2005-02-28 at 21:06 +0530, Ravindra Nadgauda wrote:
>
> Hello,
> We wanted to establish a communication from kernel module (possibly a
> driver) to a user level process.
>
> Wanted to know whether signals can be used for this purpose OR there any
> other (better) methods of communication??
If you need fast IPC forget about signals. They are way too slow.
The traditional UNIX way for userspace to talk to the kernel has been
ioctls. For various reasons ioctls are not highly regarded in the Linux
kernel community.
I believe the currently favored method is to have the driver create
sysfs entries which userspace read()s and write()s.
Really, your question is too vague. It would help if you said what
exactly you are trying to accomplish.
Lee
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2005-02-28 21:43 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <fa.hgi75u0.1cnmhaa@ifi.uio.no>
2005-02-28 15:23 ` swapper: page allocation failure. order:1, mode:0x20 Benjamin L. Shi
2005-02-28 15:36 ` Signals/ Communication from kernel to user! Ravindra Nadgauda
2005-02-28 16:48 ` Timothy R. Chavez
2005-02-28 19:13 ` Der Herr Hofrat
2005-02-28 21:17 ` Lee Revell
2005-02-28 15:38 ` swapper: page allocation failure. order:1, mode:0x20 Bernd Schubert
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox