Jump to content

Continuation of IODAK's excellent work. [kernel] updated 14-09-02


Guest Mourta

Recommended Posts

Guest technofreak

After few hours of using latest kernel, i must say that i'm really impressed. I've never seen that any kernel swich between freq so fast and go back to 51Mhz when everything setle down and go up so fast. Amazing peace of work i must say. And when i hear that is still space for improvements, that just, whoohu :D. And Android L is close. The winter will be everything but boring :D

 

Sorry for OT but i must say that :D

Link to comment
Share on other sites

Guest ottomanhero

Since you are using the cm11 kernel combined with iodak kernel why you report the opposite? That's weird to say the least and IMO give credits where is due with your cover up commits since you gain this "awesome ” battery life from it.

"It is based on LG sources" <----- quote from iodak kernel thread

"Reverted all code taken from the official CM kernel and cherrypicked commits from iodak" <----- quote from OP.

Link to comment
Share on other sites

Guest Stephan Binder

<---- And i am Spiderman

Who cares anyway?

Whoever wrote this, did it well.

Mourta continues the work, so in my opinion ask the credits here belong to him!

Link to comment
Share on other sites

Guest Giuseppe Vallone

<---- And i am Spiderman

Blah blah blah dude, prove it! Have you nothing else to do, in your life? If not, please go and spam XDA forums, so maybe you'll be banned by that censoring regime
Link to comment
Share on other sites

Guest Mourta

Since you are using the cm11 kernel combined with iodak kernel why you report the opposite? That's weird to say the least and IMO give credits where is due with your cover up commits since you gain this "awesome ” battery life from it.

 

Since i'm NOT using the cm11 kernel at all i report that i'm not using the cm11 kernel at all.

 

Yes, there will inevitably be code that is the same in both kernels but i'm not tracking cm11 and i'm cherrypicking code for the Linux 3.x kernel that i have reviewed and found useful.

 

You'll find the same additions in many different kernels for many different devices, that's just the way it goes.

 

The awesome battery life comes from the changes in cpufreq to use the cpu_notify_utilization interface to the abyssplugv2 kernel governor. Try to find that code in cm11.

 

If you have specific questions about a commit you are free to send me a private message but this is the end of this discussion within this thread.

Link to comment
Share on other sites

Guest tool_king

@Mourta

With more than four apps running in background, there are sometimes quite heavy lags. Might you have a look at the RAM management or is there a way we can optimize this issue on our end?

Link to comment
Share on other sites

Guest Mourta

When I try to access the Performance menu it gets me a force close. 'kernel tweaker stopped'

 

Wrong thread and... ok, it works fine for me, it may be a superuser problem. Does superuser work fine if you try other apps that need root access?

Link to comment
Share on other sites

Guest Mourta

@Mourta

With more than four apps running in background, there are sometimes quite heavy lags. Might you have a look at the RAM management or is there a way we can optimize this issue on our end?

 

I'm reviewing a few things to fix this, i'm running a pretty big update to fix a lot of quirks in the code as well as adding a few new things (getting rid of cpuquiet for one).

 

You can try setting the LMK values in kernel tweaker, at the bottom there are a few sane pre sets that may fix this problem.

Link to comment
Share on other sites

Guest ottomanhero

Offtopic

When I try to access the Performance menu it gets me a force close. 'kernel tweaker stopped'

It's because you scroll down the list of tabs.When you reach the end it makes kernel tweaker crash for some reason.There is nothing useful at the bottom, so better not scroll and just switch between tabs, it'll be fine.

Link to comment
Share on other sites

Guest rtunner

Wrong thread and... ok, it works fine for me, it may be a superuser problem. Does superuser work fine if you try other apps that need root access?

 

sorry. yeah, superuser works fine with other aps

Offtopic

It's because you scroll down the list of tabs.When you reach the end it makes kernel tweaker crash for some reason.There is nothing useful at the bottom, so better not scroll and just switch between tabs, it'll be fine.

thank u, but it's not that, i cant even access the kernel tweaker. 

Link to comment
Share on other sites

Guest Pasquale Lombardi

Phone sleeps very good here, never seen a so good battery life. I' m very grateful for your work mourta. Finally i see a work done with brain which give real great improvement.

post-1045158-14082444586841_thumb.jpg

Link to comment
Share on other sites

Guest Pasquale Lombardi

Your device is gaining battery without being charged? [emoji106]

Before I had done the screenshot i plugged in the charger but only for some seconds, because then i realized how good can be this result for the community. This is just the final track of the graphic, so the result is not influenced anyway, everyone can clearly recognize the little part "charged". Edited by Pasquale Lombardi
Link to comment
Share on other sites

Guest LGaljo

@Mourta, can you check this two commits:

https://github.com/CyanogenMod/lge-kernel-p880/commit/922135fd9429efc19296126b1bf71a5ec2da7dc1

https://github.com/CyanogenMod/lge-kernel-p880/commit/a040ab0ad389663acbc352d2ab7c963e30ea11b7

which has Demetris commited to Cyanogenmod kernel and reduces the wakelocks of wifi.

I can confirm that those commits has reduced wlan wakelocks.

Link to comment
Share on other sites

Guest Mourta

@Mourta, can you check this two commits:

https://github.com/CyanogenMod/lge-kernel-p880/commit/922135fd9429efc19296126b1bf71a5ec2da7dc1

https://github.com/CyanogenMod/lge-kernel-p880/commit/a040ab0ad389663acbc352d2ab7c963e30ea11b7

which has Demetris commited to Cyanogenmod kernel and reduces the wakelocks of wifi.

I can confirm that those commits has reduced wlan wakelocks.

 

Already ahead of you, i'm adding that and more from Ecco Park's updates.

 

Funny that he added it as if he was the author of the code in "net:wireless: bcmdhd: fixed power consumption issue of P2P." when he's not...

 

Here's the original commit:

 

From 6dde90185a0a8ffc9a9fc531fc52367698400127 Mon Sep 17 00:00:00 2001
From: Ecco Park <[email protected]>
Date: Thu, 10 Oct 2013 11:43:56 +0900
Subject: [PATCH] net: wireless: bcmdhd: fixed power consumption issue of P2P.

	solution : add wake_lock not to go to suspend during removing P2P GO
	interface in wl_cfg80211.c.
	Description of this issue :
	if device goes to suspend during removing the interface,
	we will fail to remove P2P GO virtual
	interface(p2p-p2p0-0).
	This will causes P2P GO still alive in firmware
	Bugnizer case id : 10874302
	This issue is reported by LG team.
Signed-off-by: Ecco Park <[email protected]>

Change-Id: I9d258bef1473aa289e53d8fe117409140702e250
---
 drivers/net/wireless/bcmdhd/dhd.h         |  3 +++
 drivers/net/wireless/bcmdhd/dhd_linux.c   | 17 +++++++++++++++++
 drivers/net/wireless/bcmdhd/wl_cfg80211.c |  6 +++++-
 3 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/bcmdhd/dhd.h b/drivers/net/wireless/bcmdhd/dhd.h
index e844f90..ee0e19e 100644
--- a/drivers/net/wireless/bcmdhd/dhd.h
+++ b/drivers/net/wireless/bcmdhd/dhd.h
@@ -415,6 +415,7 @@ extern int dhd_os_wake_unlock(dhd_pub_t *pub);
 extern int dhd_os_wake_lock_timeout(dhd_pub_t *pub);
 extern int dhd_os_wake_lock_rx_timeout_enable(dhd_pub_t *pub, int val);
 extern int dhd_os_wake_lock_ctrl_timeout_enable(dhd_pub_t *pub, int val);
+extern int dhd_os_wake_lock_ctrl_timeout_cancel(dhd_pub_t *pub);
 extern int dhd_os_wd_wake_lock(dhd_pub_t *pub);
 extern int dhd_os_wd_wake_unlock(dhd_pub_t *pub);
 
@@ -448,6 +449,8 @@ inline static void MUTEX_UNLOCK_SOFTAP_SET(dhd_pub_t * dhdp)
 	dhd_os_wake_lock_rx_timeout_enable(pub, val)
 #define DHD_OS_WAKE_LOCK_CTRL_TIMEOUT_ENABLE(pub, val) \
 	dhd_os_wake_lock_ctrl_timeout_enable(pub, val)
+#define DHD_OS_WAKE_LOCK_CTRL_TIMEOUT_CANCEL(pub) \
+	dhd_os_wake_lock_ctrl_timeout_cancel(pub)
 #define DHD_PACKET_TIMEOUT_MS	1000
 #define DHD_EVENT_TIMEOUT_MS	1500
 
diff --git a/drivers/net/wireless/bcmdhd/dhd_linux.c b/drivers/net/wireless/bcmdhd/dhd_linux.c
index 4d04ccd..4ef7c70 100644
--- a/drivers/net/wireless/bcmdhd/dhd_linux.c
+++ b/drivers/net/wireless/bcmdhd/dhd_linux.c
@@ -5824,6 +5824,23 @@ int dhd_os_wake_lock_ctrl_timeout_enable(dhd_pub_t *pub, int val)
 	return 0;
 }
 
+int dhd_os_wake_lock_ctrl_timeout_cancel(dhd_pub_t *pub)
+{
+	dhd_info_t *dhd = (dhd_info_t *)(pub->info);
+	unsigned long flags;
+
+	if (dhd) {
+		spin_lock_irqsave(&dhd->wakelock_spinlock, flags);
+		dhd->wakelock_ctrl_timeout_enable = 0;
+#ifdef CONFIG_HAS_WAKELOCK
+		if (wake_lock_active(&dhd->wl_ctrlwake))
+			wake_unlock(&dhd->wl_ctrlwake);
+#endif
+		spin_unlock_irqrestore(&dhd->wakelock_spinlock, flags);
+	}
+	return 0;
+}
+
 int net_os_wake_lock_rx_timeout_enable(struct net_device *dev, int val)
 {
 	dhd_info_t *dhd = *(dhd_info_t **)netdev_priv(dev);
diff --git a/drivers/net/wireless/bcmdhd/wl_cfg80211.c b/drivers/net/wireless/bcmdhd/wl_cfg80211.c
index 7bb07b9..0bdaf4e 100644
--- a/drivers/net/wireless/bcmdhd/wl_cfg80211.c
+++ b/drivers/net/wireless/bcmdhd/wl_cfg80211.c
@@ -1409,6 +1409,9 @@ wl_cfg80211_del_virtual_iface(struct wiphy *wiphy, bcm_struct_cfgdev *cfgdev)
 				WL_ERR(("IFDEL didn't complete properly\n"));
 			}
 			ret = dhd_del_monitor(dev);
+			if (wl_get_mode_by_netdev(wl, dev) == WL_MODE_AP) {
+				DHD_OS_WAKE_LOCK_CTRL_TIMEOUT_CANCEL((dhd_pub_t *)(wl->pub));
+			}
 		}
 	}
 	return ret;
@@ -2195,7 +2198,6 @@ __wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev,
 	}
 #endif /* WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST */
 
-
 	/* Arm scan timeout timer */
 	mod_timer(&wl->scan_timeout, jiffies + msecs_to_jiffies(WL_SCAN_TIMER_INTERVAL_MS));
 	iscan_req = false;
@@ -6153,6 +6155,8 @@ wl_cfg80211_stop_ap(
 		}
 	} else {
 		WL_DBG(("Stopping P2P GO \n"));
+		DHD_OS_WAKE_LOCK_CTRL_TIMEOUT_ENABLE((dhd_pub_t *)(wl->pub), DHD_EVENT_TIMEOUT_MS*3);
+		DHD_OS_WAKE_LOCK_TIMEOUT((dhd_pub_t *)(wl->pub));
 	}
 
 exit:
-- 
2.0.3

Link to comment
Share on other sites

Guest tool_king

Hi,

 

unlukcly with this kernel i continue to have problem with drop signal :( :( :( :(

No need to post this on more than one thread, mate!

Link to comment
Share on other sites

Guest Pasquale Lombardi

Already ahead of you, i'm adding that and more from Ecco Park's updates.

Funny that he added it as if he was the author of the code in "net:wireless: bcmdhd: fixed power consumption issue of P2P." when he's not...

Hey mourta I see that you are able and determined but demetris is reported as author just because he did some edits, but in the description real author is correctly reported. You are free to hate who you want but please stop this war against him. We are here for development and not for other personal questions. Thanks for your work anyway ;-) Edited by Pasquale Lombardi
Link to comment
Share on other sites

Guest Giuseppe Vallone

Not only Mourta is struggling against Demetris..answering to a post of mine, in official cm11 thread on XDA, Demetris wrote that Mourta was taking us as fools with his work, because he wasn't the real author of his commits (in those days Mourta was committing some code by other devs, specifying the authors' name though).. So, who started this kind of comments was Demetris, not Mourta

Link to comment
Share on other sites

Guest Mourta

Hey mourta I see that you are able and determined but demetris is reported as author just because he did some edits, but in the description real author is correctly reported. You are free to hate who you want but please stop this war against him. We are here for development and not for other personal questions. Thanks for your work anyway ;-)

 

The way to avoid that is to run git am first and when it fails you run a git apply --reject, make your edits, add the edited files and run git am --resolved.

 

He didn't change a thing except the location of the files, if i put myself as an author it's because i changed a significant part of the code besides the code additions, if i didn't then almost all commits would have me as the author.

 

But enough about that, I'm not a member of XDA and i don't care about Demetris's work.

Link to comment
Share on other sites

Guest Krislv

I don't know why but I just had a freeze while multitasking, which is a must for a quadcore smartphone and with 1 GB of RAM (Viber, browser, tapatalk, play store).. It's quite not acceptable as it lasted 5 mins and I just waited for it to work again. I'll just go back to Dalvik for now, I'll send a catlog as soon as possible.

Edit: i'm using Dalvik right now, it seems I've got no issues now, I'm starting to think that ART has problems with new installations of apps as it works very good with no new installations...

2014-08-19-22-35-50.txt

Edited by Krislv
Link to comment
Share on other sites

Guest TheSonic

I don't know why but I just had a freeze while multitasking, which is a must for a quadcore smartphone and with 1 GB of RAM (Viber, browser, tapatalk, play store).. It's quite not acceptable as it lasted 5 mins and I just waited for it to work again. I'll just go back to Dalvik for now, I'll send a catlog as soon as possible.

Edit: i'm using Dalvik right now, it seems I've got no issues now, I'm starting to think that ART has problems with new installations of apps as it works very good with no new installations...

I can can confirm that for me multitasking with Dalvik is  a lot better than ART,  I got constant freezes when using ART while multitasking

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.