Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 38829 Details for
Bug 62739
kernel panic gss gs-sources 2.4.25_pre7 / distccd
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
patch for 2.4.25_pre7-gss-r11
linux-2.4.27-page_free.patch (text/plain), 1.93 KB, created by
Dirk-Lüder Kreie
on 2004-09-03 12:03:20 UTC
(
hide
)
Description:
patch for 2.4.25_pre7-gss-r11
Filename:
MIME Type:
Creator:
Dirk-Lüder Kreie
Created:
2004-09-03 12:03:20 UTC
Size:
1.93 KB
patch
obsolete
>diff -urNp linux-2.4.22/mm/page_alloc.c linux-2.4.27/mm/page_alloc.c > ../linux-2.4.27-page_free.patch >--- linux-2.4.22/mm/page_alloc.c 2004-08-15 14:01:23.000000000 +0300 >+++ linux-2.4.27/mm/page_alloc.c 2004-08-08 02:26:06.000000000 +0300 >@@ -46,6 +46,34 @@ static int lower_zone_reserve_ratio[MAX_ > > int vm_gfp_debug = 0; > >+static void FASTCALL(__free_pages_ok (struct page *page, unsigned int order)); >+ >+static spinlock_t free_pages_ok_no_irq_lock = SPIN_LOCK_UNLOCKED; >+struct page * free_pages_ok_no_irq_head; >+ >+static void do_free_pages_ok_no_irq(void * arg) >+{ >+ struct page * page, * __page; >+ >+ spin_lock_irq(&free_pages_ok_no_irq_lock); >+ >+ page = free_pages_ok_no_irq_head; >+ free_pages_ok_no_irq_head = NULL; >+ >+ spin_unlock_irq(&free_pages_ok_no_irq_lock); >+ >+ while (page) { >+ __page = page; >+ page = page->next_hash; >+ __free_pages_ok(__page, __page->index); >+ } >+} >+ >+static struct tq_struct free_pages_ok_no_irq_task = { >+ .routine = do_free_pages_ok_no_irq, >+}; >+ >+ > /* > * Temporary debugging check. > */ >@@ -81,7 +109,6 @@ int vm_gfp_debug = 0; > * -- wli > */ > >-static void FASTCALL(__free_pages_ok (struct page *page, unsigned int order)); > static void __free_pages_ok (struct page *page, unsigned int order) > { > unsigned long index, page_idx, mask, flags; >@@ -94,8 +121,20 @@ static void __free_pages_ok (struct page > * a reference to a page in order to pin it for io. -ben > */ > if (PageLRU(page)) { >- if (unlikely(in_interrupt())) >- BUG(); >+ if (unlikely(in_interrupt())) { >+ unsigned long flags; >+ >+ spin_lock_irqsave(&free_pages_ok_no_irq_lock, flags); >+ page->next_hash = free_pages_ok_no_irq_head; >+ free_pages_ok_no_irq_head = page; >+ page->index = order; >+ >+ spin_unlock_irqrestore(&free_pages_ok_no_irq_lock, flags); >+ >+ schedule_task(&free_pages_ok_no_irq_task); >+ return; >+ } >+ > lru_cache_del(page); > } >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 62739
: 38829 |
38830