[Hotplug_sig] Re: [Lhms-devel] aioalloc kernel oops

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 06, 2004 at 10:17:55AM -0800, Dave Hansen wrote:
> On Mon, 2004-12-06 at 10:11, Mark Wong wrote:
> > The addr2line returned:
> > ??:0
> 
> Turn on your kernel debugging in the future, please.  Basically make
> sure to compile with -g.
> 

I rebuilt mm/memory_hotplug.o with -g.  Is the attached objdump
sufficient?

Mark
-------------- next part --------------
00000510 <online_pages>:

int online_pages(unsigned long pfn, unsigned long nr_pages)
{
 510:	57                   	push   %edi
	int i;

	printk(KERN_DEBUG "%s: onlining 0x%lx pages starting from pfn: 0x%lx\n",
 511:	b8 38 00 00 00       	mov    $0x38,%eax
 516:	56                   	push   %esi
 517:	53                   	push   %ebx
 518:	83 ec 10             	sub    $0x10,%esp
		__func__, nr_pages, pfn);

	for (i = 0; i < nr_pages; i++) {
 51b:	31 db                	xor    %ebx,%ebx
 51d:	89 44 24 04          	mov    %eax,0x4(%esp,1)
 521:	8b 7c 24 24          	mov    0x24(%esp,1),%edi
 525:	8b 74 24 20          	mov    0x20(%esp,1),%esi
 529:	c7 04 24 e0 00 00 00 	movl   $0xe0,(%esp,1)
 530:	89 7c 24 08          	mov    %edi,0x8(%esp,1)
 534:	89 74 24 0c          	mov    %esi,0xc(%esp,1)
 538:	e8 fc ff ff ff       	call   539 <online_pages+0x29>
 53d:	39 fb                	cmp    %edi,%ebx
 53f:	72 3f                	jb     580 <online_pages+0x70>
struct zone;
extern struct zone *zone_table[];

static inline struct zone *page_zone(struct page *page)
{
 541:	89 34 24             	mov    %esi,(%esp,1)
 544:	e8 fc ff ff ff       	call   545 <online_pages+0x35>
	return zone_table[page->flags >> NODEZONE_SHIFT];
 549:	8b 00                	mov    (%eax),%eax
 54b:	c1 e8 1d             	shr    $0x1d,%eax
 54e:	8b 04 85 00 00 00 00 	mov    0x0(,%eax,4),%eax
 555:	01 b8 18 03 00 00    	add    %edi,0x318(%eax)
		struct page *page = pfn_to_page(pfn + i);
		if (page_count(page) == 0)
			online_page(page);
	}

	page_zone(pfn_to_page(pfn))->present_pages += nr_pages;

	printk(KERN_DEBUG "%s: onlining if 0x%lx pages done.\n",
 55b:	b8 38 00 00 00       	mov    $0x38,%eax
 560:	89 7c 24 08          	mov    %edi,0x8(%esp,1)
 564:	89 44 24 04          	mov    %eax,0x4(%esp,1)
 568:	c7 04 24 18 01 00 00 	movl   $0x118,(%esp,1)
 56f:	e8 fc ff ff ff       	call   570 <online_pages+0x60>
		__func__, nr_pages);

	/* need error checking */
	return 0;
}
 574:	83 c4 10             	add    $0x10,%esp
 577:	31 c0                	xor    %eax,%eax
 579:	5b                   	pop    %ebx
 57a:	5e                   	pop    %esi
 57b:	5f                   	pop    %edi
 57c:	c3                   	ret    
 57d:	8d 76 00             	lea    0x0(%esi),%esi
 580:	8d 04 33             	lea    (%ebx,%esi,1),%eax
 583:	89 04 24             	mov    %eax,(%esp,1)
 586:	e8 fc ff ff ff       	call   587 <online_pages+0x77>
 58b:	89 c2                	mov    %eax,%edx

#ifdef CONFIG_HUGETLB_PAGE

static inline int page_count(struct page *p)
{
 58d:	89 c1                	mov    %eax,%ecx
#endif

static inline int constant_test_bit(int nr, const volatile unsigned long *addr)
{
	return ((1UL << (nr & 31)) & (addr[nr >> 5])) != 0;
 58f:	8b 00                	mov    (%eax),%eax
 591:	a9 00 80 00 00       	test   $0x8000,%eax
 596:	74 03                	je     59b <online_pages+0x8b>

static inline int page_count(struct page *p)
{
	if (PageCompound(p))
		p = (struct page *)p->private;
 598:	8b 4a 0c             	mov    0xc(%edx),%ecx
 59b:	8b 41 04             	mov    0x4(%ecx),%eax
 59e:	40                   	inc    %eax
 59f:	74 07                	je     5a8 <online_pages+0x98>
 5a1:	43                   	inc    %ebx
 5a2:	39 fb                	cmp    %edi,%ebx
 5a4:	72 da                	jb     580 <online_pages+0x70>
 5a6:	eb 99                	jmp    541 <online_pages+0x31>
 5a8:	89 14 24             	mov    %edx,(%esp,1)
 5ab:	e8 fc ff ff ff       	call   5ac <online_pages+0x9c>
 5b0:	eb ef                	jmp    5a1 <online_pages+0x91>
 5b2:	8d b4 26 00 00 00 00 	lea    0x0(%esi,1),%esi
 5b9:	8d bc 27 00 00 00 00 	lea    0x0(%edi,1),%edi


[Index of Archives]     [Linux Kernel]     [Linux DVB]     [Asterisk Internet PBX]     [DCCP]     [Netdev]     [X.org]     [Util Linux NG]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux