* [Xenomai-core] RT_HEAP Problem
@ 2008-09-02 5:15 Yasser Kashfi
2008-09-02 7:09 ` Gilles Chanteperdrix
2008-09-03 6:24 ` Yasser Kashfi
0 siblings, 2 replies; 12+ messages in thread
From: Yasser Kashfi @ 2008-09-02 5:15 UTC (permalink / raw)
To: xenomai
Hi
I have a problem with rt_heap; I write a simple program:
############################
#include <sys/mman.h>
#include <native/heap.h>
RT_HEAP M_HEAP;
int main(void) {
int ret;
int * tmp;
/* no memory-swapping for this programm */
mlockall(MCL_CURRENT | MCL_FUTURE);
ret = rt_heap_create(&M_HEAP, "M_HEAP", 5 * 1024 * 1024 , 0);
if (ret) {
fprintf(stderr, "fail to create heap, code %d\n", ret);
return ret;
}
sleep(10);
ret = rt_heap_delete(&M_HEAP);
if (ret) {
fprintf(stderr, "fail to delete heap, code %d\n", ret);
return;
}
return 0;
}
#######################
this program previously worked on another PC. but now when I execute it on the new PC, It cause the kernel panic ( Unable to handle null pointer reference ...). same kernel is run on two PC, and not seems any difference. but now I print memory status (/proc/meminfo). a huge difference is found!
in first pc ( that program worked ) total vmalloc = totol memory = 510 M and highmem = 0, but on second pc ( that kernel panic ) total vmalloc = 119M but total memory = 1 G and highmem = 122.
have everyone any idea?
I glade to see your comments.
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [Xenomai-core] RT_HEAP Problem 2008-09-02 5:15 [Xenomai-core] RT_HEAP Problem Yasser Kashfi @ 2008-09-02 7:09 ` Gilles Chanteperdrix 2008-09-03 6:24 ` Yasser Kashfi 1 sibling, 0 replies; 12+ messages in thread From: Gilles Chanteperdrix @ 2008-09-02 7:09 UTC (permalink / raw) To: yasser_kashfi; +Cc: xenomai Yasser Kashfi wrote: > this program previously worked on another PC. but now when I execute > it on the new PC, It cause the kernel panic ( Unable to handle null > pointer reference ...). same kernel is run on two PC, and not seems > any difference. but now I print memory status (/proc/meminfo). a > huge difference is found! in first pc ( that program worked ) total > vmalloc = totol memory = 510 M and highmem = 0, but on second pc ( > that kernel panic ) total vmalloc = 119M but total memory = 1 G and > highmem = 122. have everyone any idea? It seems that highmem could be the problem right ? To confirm that this is the issue, could you recompile your kernel with CONFIG_VMSPLIT_3G_OPT ? -- Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-02 5:15 [Xenomai-core] RT_HEAP Problem Yasser Kashfi 2008-09-02 7:09 ` Gilles Chanteperdrix @ 2008-09-03 6:24 ` Yasser Kashfi 2008-09-03 7:55 ` Gilles Chanteperdrix 2008-09-03 8:59 ` Gilles Chanteperdrix 1 sibling, 2 replies; 12+ messages in thread From: Yasser Kashfi @ 2008-09-03 6:24 UTC (permalink / raw) To: xenomai --- On Mon, 9/1/08, Yasser Kashfi <yasser_kashfi@domain.hid> wrote: > From: Yasser Kashfi <yasser_kashfi@domain.hid> > Subject: [Xenomai-core] RT_HEAP Problem > To: xenomai@xenomai.org > Date: Monday, September 1, 2008, 10:15 PM > Hi > I have a problem with rt_heap; I write a simple program: > ############################ > #include <sys/mman.h> > #include <native/heap.h> > > RT_HEAP M_HEAP; > int main(void) { > int ret; > int * tmp; > > /* no memory-swapping for this programm */ > mlockall(MCL_CURRENT | MCL_FUTURE); > > ret = rt_heap_create(&M_HEAP, "M_HEAP", 5 * > 1024 * 1024 , 0); > if (ret) { > fprintf(stderr, "fail to create heap, code > %d\n", ret); > return ret; > } > > sleep(10); > > ret = rt_heap_delete(&M_HEAP); > if (ret) { > fprintf(stderr, "fail to delete heap, code > %d\n", ret); > return; > } > > return 0; > > } > ####################### > this program previously worked on another PC. but now when > I execute it on the new PC, It cause the kernel panic ( > Unable to handle null pointer reference ...). same kernel is > run on two PC, and not seems any difference. but now I > print memory status (/proc/meminfo). a huge difference is > found! > in first pc ( that program worked ) total vmalloc = totol > memory = 510 M and highmem = 0, but on second pc ( that > kernel panic ) total vmalloc = 119M but total memory = 1 G > and highmem = 122. > have everyone any idea? > > I glade to see your comments. > > Hi everyone Thank Gilles for your reply. It's usefull for everyone to see kernel log befor system crash. you can see a port of /var/log/boot.msg and /var/log/message below: /var/log/boot.msg: <6>BIOS-provided physical RAM map: <4> BIOS-e820: 0000000000000000 - 000000000009f400 (usable) <4> BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) <4> BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved) <4> BIOS-e820: 0000000000100000 - 000000003f7f0000 (usable) <4> BIOS-e820: 000000003f7f0000 - 000000003f7f3000 (ACPI NVS) <4> BIOS-e820: 000000003f7f3000 - 000000003f800000 (ACPI data) <4> BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved) <5>119MB HIGHMEM available. <5>896MB LOWMEM available. <6>Memory: 1023132k/1040320k available (1953k kernel code, 16360k reserved, 1676k data, 264k init, 122816k highmem) <6>virtual kernel memory layout: <4> fixmap : 0xff8b2000 - 0xfffff000 (7476 kB) <4> pkmap : 0xff400000 - 0xff600000 (2048 kB) <4> vmalloc : 0xf8800000 - 0xff3fe000 ( 107 MB) <4> lowmem : 0xc0000000 - 0xf8000000 ( 896 MB) <4> .init : 0xc0493000 - 0xc04d5000 ( 264 kB) <4> .data : 0xc02e845a - 0xc048b784 (1676 kB) <4> .text : 0xc0100000 - 0xc02e845a (1953 kB) /var/log/message: Sep 2 19:13:42 IPE-120 kernel: general protection fault: beb4 [#1] PREEMPT Sep 2 19:13:42 IPE-120 kernel: Modules linked in: iptable_filter ip_tables ip6table_filter ip6_tables x_tables ipv6 ext2 loop dm_mod iTCO_wdt e100 mii i2c_i801 rtc_cmos intel_agp iTCO_vendor_support shpchp sr_mod rtc_core button pci_hotplug agpgart cdrom rtc_lib i2c_core sg sd_mod ehci_hcd uhci_hcd usbcore edd ext3 mbcache jbd fan ata_piix libata scsi_mod dock Sep 2 19:13:42 IPE-120 kernel: Sep 2 19:13:42 IPE-120 kernel: Pid: 13, comm: pdflush Not tainted (2.6.25-7 #1) Sep 2 19:13:42 IPE-120 kernel: EIP: 0060:[<c17f0759>] EFLAGS: 00010287 CPU: 0 Sep 2 19:13:42 IPE-120 kernel: EIP is at 0xc17f0759 Sep 2 19:13:42 IPE-120 kernel: EAX: c0112221 EBX: c17f0754 ECX: 00000000 EDX: 00000003 Sep 2 19:13:42 IPE-120 kernel: ESI: c17f0754 EDI: 00000001 EBP: f765be88 ESP: f765be6c Sep 2 19:13:42 IPE-120 kernel: DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 Sep 2 19:13:42 IPE-120 kernel: Process pdflush (pid: 13, ti=f765a000 task=f74fc020 task.ti=f765a000)<0> Sep 2 19:13:42 IPE-120 kernel: I-pipe domain Linux Sep 2 19:13:42 IPE-120 kernel: Stack: f765beb4 00000003 c17f0360 c17f0750 00000200 00000001 00000003 f765bea8 Sep 2 19:13:42 IPE-120 kernel: c01146cb 00000000 f765beb4 c17f0360 c17f0360 f71358e8 00000008 f765bec0 Sep 2 19:13:42 IPE-120 kernel: c0129e5e f765beb4 f71358e8 00000008 c03bf938 f765bed4 c0129ec0 00000000 Sep 2 19:13:42 IPE-120 kernel: Call Trace: Sep 2 19:13:42 IPE-120 kernel: [<c01146cb>] ? __wake_up+0x40/0x78 Sep 2 19:13:42 IPE-120 kernel: [<c0129e5e>] ? __wake_up_bit+0x28/0x2e Sep 2 19:13:42 IPE-120 kernel: [<c0129ec0>] ? wake_up_bit+0x5c/0x61 Sep 2 19:13:42 IPE-120 kernel: [<c01a1b3a>] ? __writeback_single_inode+0x32c/0x337 Sep 2 19:13:42 IPE-120 kernel: [<c011236f>] ? __dequeue_entity+0x73/0x7b Sep 2 19:13:42 IPE-120 kernel: [<c01e79ac>] ? _atomic_dec_and_lock+0x28/0x44 Sep 2 19:13:42 IPE-120 kernel: [<c01a1f18>] ? sync_sb_inodes+0x20c/0x317 Sep 2 19:13:42 IPE-120 kernel: [<c01a221d>] ? writeback_inodes+0x85/0xfe Sep 2 19:13:42 IPE-120 kernel: [<c016f564>] ? wb_kupdate+0x6d/0xd0 Sep 2 19:13:42 IPE-120 kernel: [<c016fc91>] ? pdflush+0x0/0x1bb Sep 2 19:13:42 IPE-120 kernel: [<c016fd99>] ? pdflush+0x108/0x1bb Sep 2 19:13:42 IPE-120 kernel: [<c016f4f7>] ? wb_kupdate+0x0/0xd0 Sep 2 19:13:42 IPE-120 kernel: [<c0129b0f>] ? kthread+0x39/0x5e Sep 2 19:13:42 IPE-120 kernel: [<c0129ad6>] ? kthread+0x0/0x5e Sep 2 19:13:42 IPE-120 kernel: [<c0103e77>] ? kernel_thread_helper+0x7/0x10 Sep 2 19:13:42 IPE-120 kernel: ======================= Sep 2 19:13:42 IPE-120 kernel: Code: 7f c1 30 07 7f c1 30 07 7f c1 38 07 7f c1 38 07 7f c1 40 07 7f c1 40 07 7f c1 48 07 7f c1 48 07 7f c1 50 07 7f c1 50 07 7f c1 58 <07> 7f c1 58 07 7f c1 60 07 7f c1 60 07 7f c1 68 07 7f c1 68 07 Sep 2 19:13:42 IPE-120 kernel: EIP: [<c17f0759>] 0xc17f0759 SS:ESP 0068:f765be6c Sep 2 19:13:42 IPE-120 kernel: ---[ end trace f7a37c98e4d03c27 ]--- Sep 2 19:13:42 IPE-120 kernel: note: pdflush[13] exited with preempt_count 2 Sep 2 19:14:19 IPE-120 kernel: general protection fault: 2220 [#2] PREEMPT Sep 2 19:14:19 IPE-120 kernel: Modules linked in: iptable_filter ip_tables ip6table_filter ip6_tables x_tables ipv6 ext2 loop dm_mod iTCO_wdt e100 mii i2c_i801 rtc_cmos intel_agp iTCO_vendor_support shpchp sr_mod rtc_core button pci_hotplug agpgart cdrom rtc_lib i2c_core sg sd_mod ehci_hcd uhci_hcd usbcore edd ext3 mbcache jbd fan ata_piix libata scsi_mod dock Sep 2 19:14:19 IPE-120 kernel: Sep 2 19:14:19 IPE-120 kernel: Pid: 2412, comm: postmaster Tainted: G D (2.6.25-7 #1) Sep 2 19:14:19 IPE-120 kernel: EIP: 0060:[<c17f07bd>] EFLAGS: 00010287 CPU: 0 Sep 2 19:14:19 IPE-120 kernel: EIP is at 0xc17f07bd Sep 2 19:14:19 IPE-120 kernel: EAX: b8c17f07 EBX: c17f07b4 ECX: 00000000 EDX: 00000003 Sep 2 19:14:19 IPE-120 kernel: ESI: c17f07b4 EDI: 00000001 EBP: f765bbd8 ESP: f765bbb8 Sep 2 19:14:19 IPE-120 kernel: DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068 Sep 2 19:14:19 IPE-120 kernel: Process postmaster (pid: 2412, ti=f765a000 task=f6d4e020 task.ti=f765a000)<0> Sep 2 19:14:19 IPE-120 kernel: I-pipe domain Linux Sep 2 19:14:19 IPE-120 kernel: Stack: c0112221 f765bc04 00000003 c17f03c0 c17f07b0 00000200 00000001 00000003 Sep 2 19:14:19 IPE-120 kernel: f765bbf8 c01146cb 00000000 f765bc04 c17f03c0 c17f03c0 00000000 f7a7c384 Sep 2 19:14:19 IPE-120 kernel: f765bc10 c0129e5e f765bc04 c16fe460 00000000 c16fe460 f765bc1c c01699b2 Sep 2 19:14:19 IPE-120 kernel: Call Trace: Sep 2 19:14:19 IPE-120 kernel: [<c0112221>] ? __wake_up_common+0x2e/0x54 Sep 2 19:14:19 IPE-120 kernel: [<c01146cb>] ? __wake_up+0x40/0x78 Sep 2 19:14:19 IPE-120 kernel: [<c0129e5e>] ? __wake_up_bit+0x28/0x2e Sep 2 19:14:19 IPE-120 kernel: [<c01699b2>] ? unlock_page+0x4a/0x4d Sep 2 19:14:19 IPE-120 kernel: [<c0175639>] ? __do_fault+0x2df/0x317 Sep 2 19:14:19 IPE-120 kernel: [<c01765df>] ? handle_mm_fault+0x299/0x5f5 Sep 2 19:14:19 IPE-120 kernel: [<c02e1028>] ? do_page_fault+0x2b7/0x656 Sep 2 19:14:19 IPE-120 kernel: [<c027acef>] ? sock_queue_rcv_skb+0x10f/0x118 Sep 2 19:14:19 IPE-120 kernel: [<c016cf83>] ? __rmqueue+0x16/0x1aa Sep 2 19:14:19 IPE-120 kernel: [<c0169b10>] ? find_lock_page+0x9f/0xb9 Sep 2 19:14:19 IPE-120 kernel: [<c0182ddb>] ? shmem_getpage+0x58/0x766 Sep 2 19:14:19 IPE-120 kernel: [<c0170599>] ? activate_page+0x9c/0xb2 Sep 2 19:14:19 IPE-120 kernel: [<c01705ca>] ? mark_page_accessed+0x1b/0x2c Sep 2 19:14:19 IPE-120 kernel: [<c010eb5e>] ? __ipipe_handle_exception+0x105/0x14e Sep 2 19:14:19 IPE-120 kernel: [<c02df93b>] ? error_code+0x6f/0x7c Sep 2 19:14:19 IPE-120 kernel: [<c0169477>] ? file_read_actor+0x3f/0xbf Sep 2 19:14:19 IPE-120 kernel: [<c016b787>] ? generic_file_aio_read+0x2d7/0x527 Sep 2 19:14:19 IPE-120 kernel: [<c0190c6c>] ? path_walk+0x8d/0x96 Sep 2 19:14:19 IPE-120 kernel: [<c0187c36>] ? do_sync_read+0xaa/0xe8 Sep 2 19:14:19 IPE-120 kernel: [<c01862b0>] ? generic_file_open+0x0/0x56 Sep 2 19:14:19 IPE-120 kernel: [<c0129ec5>] ? autoremove_wake_function+0x0/0x33 Sep 2 19:14:19 IPE-120 kernel: [<c0145f2e>] ? __ipipe_restore_root+0x26/0x28 Sep 2 19:14:19 IPE-120 kernel: [<c01d7fbb>] ? security_file_permission+0xf/0x11 Sep 2 19:14:19 IPE-120 kernel: [<c0187b8c>] ? do_sync_read+0x0/0xe8 Sep 2 19:14:19 IPE-120 kernel: [<c01885af>] ? vfs_read+0x87/0x129 Sep 2 19:14:19 IPE-120 kernel: [<c01886ea>] ? sys_read+0x3b/0x60 Sep 2 19:14:19 IPE-120 kernel: [<c0103935>] ? sysenter_past_esp+0x6e/0x72 Sep 2 19:14:19 IPE-120 kernel: ======================= Sep 2 19:14:19 IPE-120 kernel: Code: 7f c1 90 07 7f c1 98 07 7f c1 98 07 7f c1 a0 07 7f c1 a0 07 7f c1 a8 07 7f c1 a8 07 7f c1 b0 07 7f c1 b0 07 7f c1 b8 07 7f c1 b8 <07> 7f c1 c0 07 7f c1 c0 07 7f c1 c8 07 7f c1 c8 07 7f c1 d0 07 Sep 2 19:14:19 IPE-120 kernel: EIP: [<c17f07bd>] 0xc17f07bd SS:ESP 0068:f765bbb8 Sep 2 19:14:19 IPE-120 kernel: ---[ end trace f7a37c98e4d03c27 ]--- Sep 2 19:14:19 IPE-120 kernel: note: postmaster[2412] exited with preempt_count 1 Sep 2 19:14:20 IPE-120 kernel: general protection fault: 2220 [#3] PREEMPT Sep 2 19:14:20 IPE-120 kernel: Modules linked in: iptable_filter ip_tables ip6table_filter ip6_tables x_tables ipv6 ext2 loop dm_mod iTCO_wdt e100 mii i2c_i801 rtc_cmos intel_agp iTCO_vendor_support shpchp sr_mod rtc_core button pci_hotplug agpgart cdrom rtc_lib i2c_core sg sd_mod ehci_hcd uhci_hcd usbcore edd ext3 mbcache jbd fan ata_piix libata scsi_mod dock Sep 2 19:14:20 IPE-120 kernel: Sep 2 19:14:20 IPE-120 kernel: Pid: 2127, comm: postmaster Tainted: G D (2.6.25-7 #1) Sep 2 19:14:20 IPE-120 kernel: EIP: 0060:[<c17f07bd>] EFLAGS: 00010287 CPU: 0 Sep 2 19:14:20 IPE-120 kernel: EIP is at 0xc17f07bd Sep 2 19:14:20 IPE-120 kernel: EAX: b8c17f07 EBX: c17f07b4 ECX: 00000000 EDX: 00000003 Sep 2 19:14:20 IPE-120 kernel: ESI: c17f07b4 EDI: 00000001 EBP: f78f3d68 ESP: f78f3d48 Sep 2 19:14:20 IPE-120 kernel: DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068 Sep 2 19:14:20 IPE-120 kernel: Process postmaster (pid: 2127, ti=f78f2000 task=f6934020 task.ti=f78f2000)<0> Sep 2 19:14:20 IPE-120 kernel: I-pipe domain Linux Sep 2 19:14:20 IPE-120 kernel: Stack: c0112221 f78f3d94 00000003 c17f03c0 c17f07b0 00000200 00000001 00000003 Sep 2 19:14:20 IPE-120 kernel: f78f3d88 c01146cb 00000000 f78f3d94 c17f03c0 c17f03c0 00000009 00000151 Sep 2 19:14:20 IPE-120 kernel: f78f3da0 c0129e5e f78f3d94 c16fe460 00000000 c16fe460 f78f3dac c01699b2 Sep 2 19:14:20 IPE-120 kernel: Call Trace: Sep 2 19:14:20 IPE-120 kernel: [<c0112221>] ? __wake_up_common+0x2e/0x54 Sep 2 19:14:20 IPE-120 kernel: [<c01146cb>] ? __wake_up+0x40/0x78 Sep 2 19:14:20 IPE-120 kernel: [<c0129e5e>] ? __wake_up_bit+0x28/0x2e Sep 2 19:14:20 IPE-120 kernel: [<c01699b2>] ? unlock_page+0x4a/0x4d Sep 2 19:14:20 IPE-120 kernel: [<c017134c>] ? truncate_inode_pages_range+0xbb/0x27b Sep 2 19:14:20 IPE-120 kernel: [<c0182282>] ? shmem_delete_inode+0x0/0xc8 Sep 2 19:14:20 IPE-120 kernel: [<c0171518>] ? truncate_inode_pages+0xc/0x10 Sep 2 19:14:20 IPE-120 kernel: [<c01822b5>] ? shmem_delete_inode+0x33/0xc8 Sep 2 19:14:20 IPE-120 kernel: [<c0182282>] ? shmem_delete_inode+0x0/0xc8 Sep 2 19:14:20 IPE-120 kernel: [<c0199f4a>] ? generic_delete_inode+0xa8/0x12d Sep 2 19:14:20 IPE-120 kernel: [<c0199361>] ? iput+0x63/0x66 Sep 2 19:14:20 IPE-120 kernel: [<c019708d>] ? dentry_iput+0xa3/0xe4 Sep 2 19:14:20 IPE-120 kernel: [<c0197148>] ? d_kill+0x2d/0x47 Sep 2 19:14:20 IPE-120 kernel: [<c0197811>] ? dput+0x129/0x131 Sep 2 19:14:20 IPE-120 kernel: [<c0188e17>] ? __fput+0x138/0x158 Sep 2 19:14:20 IPE-120 kernel: [<c0188e4d>] ? fput+0x16/0x18 Sep 2 19:14:20 IPE-120 kernel: [<c01d125c>] ? shm_destroy+0x8b/0xab Sep 2 19:14:20 IPE-120 kernel: [<c01d1386>] ? do_shm_rmid+0x55/0x57 Sep 2 19:14:20 IPE-120 kernel: [<c01d1dc2>] ? sys_shmctl+0x574/0x856 Sep 2 19:14:20 IPE-120 kernel: [<c018538c>] ? kfree+0xa3/0xa9 Sep 2 19:14:20 IPE-120 kernel: [<c01e79ac>] ? _atomic_dec_and_lock+0x28/0x44 Sep 2 19:14:20 IPE-120 kernel: [<c019c6de>] ? mntput_no_expire+0x16/0x92 Sep 2 19:14:20 IPE-120 kernel: [<c0145f2e>] ? __ipipe_restore_root+0x26/0x28 Sep 2 19:14:20 IPE-120 kernel: [<c0184d96>] ? kmem_cache_free+0x5d/0x63 Sep 2 19:14:20 IPE-120 kernel: [<c0178840>] ? remove_vma+0x34/0x3a Sep 2 19:14:20 IPE-120 kernel: [<c01795de>] ? do_munmap+0x1cc/0x1e6 Sep 2 19:14:20 IPE-120 kernel: [<c01d11c7>] ? sys_shmdt+0xec/0xf6 Sep 2 19:14:20 IPE-120 kernel: [<c0105c27>] ? sys_ipc+0x130/0x149 Sep 2 19:14:20 IPE-120 kernel: [<c010eb76>] ? __ipipe_handle_exception+0x11d/0x14e Sep 2 19:14:20 IPE-120 kernel: [<c0103935>] ? sysenter_past_esp+0x6e/0x72 Sep 2 19:14:20 IPE-120 kernel: ======================= Sep 2 19:14:20 IPE-120 kernel: Code: 7f c1 90 07 7f c1 98 07 7f c1 98 07 7f c1 a0 07 7f c1 a0 07 7f c1 a8 07 7f c1 a8 07 7f c1 b0 07 7f c1 b0 07 7f c1 b8 07 7f c1 b8 <07> 7f c1 c0 07 7f c1 c0 07 7f c1 c8 07 7f c1 c8 07 7f c1 d0 07 Sep 2 19:14:20 IPE-120 kernel: EIP: [<c17f07bd>] 0xc17f07bd SS:ESP 0068:f78f3d48 Sep 2 19:14:20 IPE-120 kernel: ---[ end trace f7a37c98e4d03c27 ]--- Sep 2 19:14:20 IPE-120 kernel: note: postmaster[2127] exited with preempt_count 1 Best regards. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-03 6:24 ` Yasser Kashfi @ 2008-09-03 7:55 ` Gilles Chanteperdrix 2008-09-03 8:59 ` Gilles Chanteperdrix 1 sibling, 0 replies; 12+ messages in thread From: Gilles Chanteperdrix @ 2008-09-03 7:55 UTC (permalink / raw) To: yasser_kashfi; +Cc: xenomai Yasser Kashfi wrote: > Hi everyone Thank Gilles for your reply. It's usefull for everyone to > see kernel log befor system crash. you can see a port of > /var/log/boot.msg and /var/log/message below: And about CONFIG_VMSPLIT_3G_OPT ? -- Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-03 6:24 ` Yasser Kashfi 2008-09-03 7:55 ` Gilles Chanteperdrix @ 2008-09-03 8:59 ` Gilles Chanteperdrix 2008-09-06 13:08 ` Yasser Kashfi 1 sibling, 1 reply; 12+ messages in thread From: Gilles Chanteperdrix @ 2008-09-03 8:59 UTC (permalink / raw) To: yasser_kashfi; +Cc: xenomai Yasser Kashfi wrote: > <5>119MB HIGHMEM available. > <5>896MB LOWMEM available. This kernel has still some highmem, so it was not compiled with CONFIG_VMSPLIT_3G_OPT. -- Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-03 8:59 ` Gilles Chanteperdrix @ 2008-09-06 13:08 ` Yasser Kashfi 2008-09-06 13:16 ` Gilles Chanteperdrix 0 siblings, 1 reply; 12+ messages in thread From: Yasser Kashfi @ 2008-09-06 13:08 UTC (permalink / raw) To: xenomai Hi I tryed to set CONFIG_VMSPLIT_3G_OPT=y but never successful :( could you help me? --- On Wed, 9/3/08, Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> wrote: > From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > Subject: Re: [Xenomai-core] RT_HEAP Problem > To: yasser_kashfi@domain.hid > Cc: xenomai@xenomai.org > Date: Wednesday, September 3, 2008, 1:59 AM > Yasser Kashfi wrote: > > <5>119MB HIGHMEM available. > > <5>896MB LOWMEM available. > > This kernel has still some highmem, so it was not compiled > with > CONFIG_VMSPLIT_3G_OPT. > > -- > Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-06 13:08 ` Yasser Kashfi @ 2008-09-06 13:16 ` Gilles Chanteperdrix 2008-09-07 13:21 ` Yasser Kashfi 0 siblings, 1 reply; 12+ messages in thread From: Gilles Chanteperdrix @ 2008-09-06 13:16 UTC (permalink / raw) To: yasser_kashfi; +Cc: xenomai Yasser Kashfi wrote: > Hi > I tryed to set CONFIG_VMSPLIT_3G_OPT=y but never successful :( could you help me? In your kernel build directory run make xconfig go in the "Processor types and features" for the menu item "High Memory Support" select "off" for the menu item "Memory split", select "3G/1G kernel split (for full 1G low memory)" save the config, recompile the kernel and install it as usual. -- Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-06 13:16 ` Gilles Chanteperdrix @ 2008-09-07 13:21 ` Yasser Kashfi 2008-09-07 15:36 ` Gilles Chanteperdrix 0 siblings, 1 reply; 12+ messages in thread From: Yasser Kashfi @ 2008-09-07 13:21 UTC (permalink / raw) To: xenomai Hi Thanks Gilles for your notes. The problem is solved. --- On Sat, 9/6/08, Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> wrote: > From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > Subject: Re: [Xenomai-core] RT_HEAP Problem > To: yasser_kashfi@domain.hid > Cc: xenomai@xenomai.org > Date: Saturday, September 6, 2008, 6:16 AM > Yasser Kashfi wrote: > > Hi > > I tryed to set CONFIG_VMSPLIT_3G_OPT=y but never > successful :( could you help me? > > In your kernel build directory run make xconfig > go in the "Processor types and features" > for the menu item "High Memory Support" select > "off" > for the menu item "Memory split", select > "3G/1G kernel split (for full > 1G low memory)" > > save the config, recompile the kernel and install it as > usual. > > -- > Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-07 13:21 ` Yasser Kashfi @ 2008-09-07 15:36 ` Gilles Chanteperdrix 2008-09-22 20:55 ` Gilles Chanteperdrix 0 siblings, 1 reply; 12+ messages in thread From: Gilles Chanteperdrix @ 2008-09-07 15:36 UTC (permalink / raw) To: yasser_kashfi; +Cc: xenomai Yasser Kashfi wrote: > Hi > Thanks Gilles for your notes. The problem is solved. Well... not exactly, it shows that the problem is using highmem, but we should now modify xenomai so that it supports using highmem. -- Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-07 15:36 ` Gilles Chanteperdrix @ 2008-09-22 20:55 ` Gilles Chanteperdrix 2008-09-25 12:33 ` Gilles Chanteperdrix 0 siblings, 1 reply; 12+ messages in thread From: Gilles Chanteperdrix @ 2008-09-22 20:55 UTC (permalink / raw) To: yasser_kashfi; +Cc: xenomai Gilles Chanteperdrix wrote: > Yasser Kashfi wrote: >> Hi >> Thanks Gilles for your notes. The problem is solved. > > Well... not exactly, it shows that the problem is using highmem, but we > should now modify xenomai so that it supports using highmem. > Hi Yasser, here is a patch which is supposed to fix this issue with highmem. Could you apply it and use the same kernel configuration as you used initially ? Thanks in advance. Index: include/asm-generic/wrappers.h =================================================================== --- include/asm-generic/wrappers.h (revision 4175) +++ include/asm-generic/wrappers.h (working copy) @@ -64,12 +64,9 @@ /* VM */ -/* We don't support MMU-less architectures over 2.4 */ -unsigned long __va_to_kva(unsigned long va); - #define wrap_remap_vm_page(vma,from,to) ({ \ vma->vm_flags |= VM_RESERVED; \ - remap_page_range(from,virt_to_phys((void *)__va_to_kva(to)),PAGE_SIZE,vma->vm_page_prot); \ + remap_page_range(from,page_to_phys(vmalloc_to_page((void *)to)),PAGE_SIZE,vma->vm_page_prot); \ }) #define wrap_remap_io_page_range(vma,from,to,size,prot) ({ \ vma->vm_flags |= VM_RESERVED; \ @@ -344,10 +341,7 @@ unsigned long find_next_bit(const unsign /* VM */ -#ifdef CONFIG_MMU -unsigned long __va_to_kva(unsigned long va); -#else /* !CONFIG_MMU */ -#define __va_to_kva(va) (va) +#ifndef CONFIG_MMU #define pgprot_noncached(p) (p) #endif /* CONFIG_MMU */ @@ -372,7 +366,7 @@ unsigned long __va_to_kva(unsigned long * memory. Anyway, this legacy would only hit setups using pre-2.6.11 * kernel revisions. */ #define wrap_remap_vm_page(vma,from,to) \ - remap_pfn_range(vma,from,virt_to_phys((void *)__va_to_kva(to)) >> PAGE_SHIFT,PAGE_SHIFT,vma->vm_page_prot) + remap_pfn_range(vma,from,page_to_pfn(vmalloc_to_page((void *)to)),PAGE_SHIFT,vma->vm_page_prot) #define wrap_remap_io_page_range(vma,from,to,size,prot) ({ \ (vma)->vm_page_prot = pgprot_noncached((vma)->vm_page_prot); \ /* Sets VM_RESERVED | VM_IO | VM_PFNMAP on the vma. */ \ @@ -385,7 +379,7 @@ unsigned long __va_to_kva(unsigned long #else /* LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) */ #define wrap_remap_vm_page(vma,from,to) ({ \ vma->vm_flags |= VM_RESERVED; \ - remap_page_range(from,virt_to_phys((void *)__va_to_kva(to)),PAGE_SIZE,vma->vm_page_prot); \ + remap_page_range(from,page_to_phys(vmalloc_to_page((void *)to)),PAGE_SIZE,vma->vm_page_prot); \ }) #define wrap_remap_io_page_range(vma,from,to,size,prot) ({ \ vma->vm_flags |= VM_RESERVED; \ Index: ksrc/nucleus/heap.c =================================================================== --- ksrc/nucleus/heap.c (revision 4175) +++ ksrc/nucleus/heap.c (working copy) @@ -1010,44 +1010,6 @@ static int xnheap_ioctl(struct inode *in return err; } -#ifdef CONFIG_MMU - -unsigned long __va_to_kva(unsigned long va) -{ - pgd_t *pgd; - pmd_t *pmd; - pte_t *ptep, pte; - unsigned long kva = 0; - - pgd = pgd_offset_k(va); /* Page directory in kernel map. */ - - if (!pgd_none(*pgd) && !pgd_bad(*pgd)) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 11) - /* Page middle directory -- account for PAE. */ - pmd = pmd_offset(pud_offset(pgd, va), va); -#else - /* Page middle directory. */ - pmd = pmd_offset(pgd, va); -#endif - - if (!pmd_none(*pmd)) { - ptep = pte_offset_kernel(pmd, va); /* Page table entry. */ - pte = *ptep; - - if (pte_present(pte)) { /* Valid? */ - kva = (unsigned long)page_address(pte_page(pte)); /* Page address. */ - kva |= (va & (PAGE_SIZE - 1)); /* Add offset within page. */ - } - } - } - - return kva; -} - -EXPORT_SYMBOL(__va_to_kva); - -#endif /* CONFIG_MMU */ - static int xnheap_mmap(struct file *file, struct vm_area_struct *vma) { unsigned long offset, size, vaddr; @@ -1175,7 +1137,7 @@ static inline void *__alloc_and_reserve_ vabase = (unsigned long)ptr; for (vaddr = vabase; vaddr < vabase + size; vaddr += PAGE_SIZE) - SetPageReserved(virt_to_page(__va_to_kva(vaddr))); + SetPageReserved(vmalloc_to_page((void *)vaddr)); } else { /* * Otherwise, we have been asked for some kmalloc() @@ -1211,7 +1173,7 @@ static inline void __unreserve_and_free_ if (!kmflags || kmflags == XNHEAP_GFP_NONCACHED) { for (vaddr = vabase; vaddr < vabase + size; vaddr += PAGE_SIZE) - ClearPageReserved(virt_to_page(__va_to_kva(vaddr))); + ClearPageReserved(vmalloc_to_page((void *)vaddr)); vfree(ptr); } else { -- Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-22 20:55 ` Gilles Chanteperdrix @ 2008-09-25 12:33 ` Gilles Chanteperdrix 2008-09-28 14:04 ` Yasser Kashfi 0 siblings, 1 reply; 12+ messages in thread From: Gilles Chanteperdrix @ 2008-09-25 12:33 UTC (permalink / raw) To: yasser_kashfi; +Cc: xenomai Gilles Chanteperdrix wrote: > Gilles Chanteperdrix wrote: >> Yasser Kashfi wrote: >>> Hi >>> Thanks Gilles for your notes. The problem is solved. >> Well... not exactly, it shows that the problem is using highmem, but we >> should now modify xenomai so that it supports using highmem. >> > > > Hi Yasser, > > here is a patch which is supposed to fix this issue with highmem. Could > you apply it and use the same kernel configuration as you used initially > ? > > Thanks in advance. Hi Yasser, if you do not have time to test this patch, please tell us, we will try and test it by other means. Regards. -- Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Xenomai-core] RT_HEAP Problem 2008-09-25 12:33 ` Gilles Chanteperdrix @ 2008-09-28 14:04 ` Yasser Kashfi 0 siblings, 0 replies; 12+ messages in thread From: Yasser Kashfi @ 2008-09-28 14:04 UTC (permalink / raw) To: xenomai Hi Gilles, excuse me, I will test it and reply to you at Tuesday. regards --- On Thu, 9/25/08, Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> wrote: > From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> > Subject: Re: [Xenomai-core] RT_HEAP Problem > To: yasser_kashfi@domain.hid > Cc: xenomai@xenomai.org > Date: Thursday, September 25, 2008, 5:33 AM > Gilles Chanteperdrix wrote: > > Gilles Chanteperdrix wrote: > >> Yasser Kashfi wrote: > >>> Hi > >>> Thanks Gilles for your notes. The problem is > solved. > >> Well... not exactly, it shows that the problem is > using highmem, but we > >> should now modify xenomai so that it supports > using highmem. > >> > > > > > > Hi Yasser, > > > > here is a patch which is supposed to fix this issue > with highmem. Could > > you apply it and use the same kernel configuration as > you used initially > > ? > > > > Thanks in advance. > > Hi Yasser, > > if you do not have time to test this patch, please tell us, > we will try > and test it by other means. > > Regards. > > -- > Gilles. ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2008-09-28 14:04 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-09-02 5:15 [Xenomai-core] RT_HEAP Problem Yasser Kashfi 2008-09-02 7:09 ` Gilles Chanteperdrix 2008-09-03 6:24 ` Yasser Kashfi 2008-09-03 7:55 ` Gilles Chanteperdrix 2008-09-03 8:59 ` Gilles Chanteperdrix 2008-09-06 13:08 ` Yasser Kashfi 2008-09-06 13:16 ` Gilles Chanteperdrix 2008-09-07 13:21 ` Yasser Kashfi 2008-09-07 15:36 ` Gilles Chanteperdrix 2008-09-22 20:55 ` Gilles Chanteperdrix 2008-09-25 12:33 ` Gilles Chanteperdrix 2008-09-28 14:04 ` Yasser Kashfi
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.