Ok, this time the low-memory patch is attached :))... I hope it also works.

Best Regards,
Andrea

2008/6/9 Marty <[EMAIL PROTECTED]>:

>
>
>
> On 6月6日, 下午6時22分, "Andrea Bernardi" <[EMAIL PROTECTED]> wrote:
> > Sorry, in the previous lowmemory patch I have forgotten something. That
> > attached in this mail is correct...I hope ;D
> >
>
> Dear Andrea,
>
> thanks for your reply. but you seem to forget attache the path file :)
>
> Marty
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Android Internals" group.
To post to this group, send email to android-internals@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/android-internals?hl=en
-~----------~----~----~----~------~----~------~--~---

diff -urpN a/drivers/misc/lowmemorykiller/lowmemorykiller.c b/drivers/misc/lowmemorykiller/lowmemorykiller.c
--- a/drivers/misc/lowmemorykiller/lowmemorykiller.c	2008-05-20 10:37:09.000000000 +0200
+++ b/drivers/misc/lowmemorykiller/lowmemorykiller.c	2008-05-26 14:11:51.000000000 +0200
@@ -21,9 +21,18 @@
 
 static int lowmem_shrink(int nr_to_scan, gfp_t gfp_mask);
 
+/* android-start */
+struct shrinker {
+	shrinker_t		shrinker;
+	struct list_head	list;
+	int			seeks;	/* seeks to recreate an obj */
+	long			nr;	/* objs pending delete */
+};
+/* android-end */
+
 static struct shrinker lowmem_shrinker = {
-	.shrink = lowmem_shrink,
-	.seeks = DEFAULT_SEEKS * 16
+	.shrinker = lowmem_shrink,
+	.seeks    = DEFAULT_SEEKS * 16
 };
 static uint32_t lowmem_debug_level = 2;
 static int lowmem_adj[6] = {
--- a/mm/vmscan.c	2007-04-26 05:08:32.000000000 +0200
+++ b/mm/vmscan.c	2008-05-26 14:38:53.000000000 +0200
@@ -150,6 +150,31 @@ void remove_shrinker(struct shrinker *sh
 }
 EXPORT_SYMBOL(remove_shrinker);
 
+/* android-start */
+/*
+ * Add a shrinker callback to be called from the vm
+ */
+void register_shrinker(struct shrinker *shrinker)
+{
+	shrinker->nr = 0;
+	down_write(&shrinker_rwsem);
+	list_add_tail(&shrinker->list, &shrinker_list);
+	up_write(&shrinker_rwsem);
+}
+EXPORT_SYMBOL(register_shrinker);
+
+/*
+ * Remove one
+ */
+void unregister_shrinker(struct shrinker *shrinker)
+{
+	down_write(&shrinker_rwsem);
+	list_del(&shrinker->list);
+	up_write(&shrinker_rwsem);
+}
+EXPORT_SYMBOL(unregister_shrinker);
+/* android-end */
+
 #define SHRINK_BATCH 128
 /*
  * Call the shrink functions to age shrinkable caches

Reply via email to