[MODULE] Swap Torpedo - run faster and more reliably - Magisk

Using compressed RAM for swap on a phone with enough RAM in the first place sucks.
Let's take a look using RAM Truth from the Play Store -
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
It makes no sense to use 500 MB of swap with 3 GB RAM free!
If yours already looks like the second picture, 0 swap, you're done, you don't need this module.
(Note - we're going to update RAM Truth - the swap type used on the honor is zram.)
But if you need to get rid of swap, here you go -
Swap Torpedo - A Magisk Module
Universal compressed-memory swap (zram, etc etc) destroyer - run faster and more reliably!
By EarlyMon - version 1.1
Swap is a way to expand your RAM using clever software and some unused storage space. You see it a lot in Android as zram or vmswap, that is, compressed-memory swap. Storage-based swap is fine, compressed-memory swap - not so much.
Swap is a fine thing for desktops with sufficient resources and for Android devices really hampered with too little ram.
On Android it was originally intended for devices with less than 1 GB RAM.
If you have an Android One or another small-memory device, this is NOT the module for you.
But if you have 2 GB of RAM or more, you want this.
Do you suffer from lag, random UI pauses, apps not running correctly and consistently, and background apps failing even when you have them marked for protection? Do you have to reboot every day or so to restore speed?
All of that is almost always caused by having swap implemented and the Swap Torpedo fixes it.
Manufacturers, including Google, have fallen in love with compressed-memory swap because it allows your Android to synthetically appear better at multitasking. In reality, it ruins multitasking.
Why? For large memory devices you want the swap space to be at minimum the square root of your RAM size and ideally the same size as, or up to double the size of, your RAM.
The problem is that they don't use enough space because they can't - they're basically using a compressed RAM disk as a swap partition.
If you think about that, it will raise the right questions.
Does it make sense to use RAM for something other than apps and the operating system? Does it make sense to constantly have the operating system pause while it shuffles and reorganizes your RAM? Does it make sense for you to wait on everything while various pieces of RAM are getting zipped and unzipped to support this scheme? Does it make sense to do all of that incorrectly in the first place because you can't get enough swap space to properly support multitasking, by design?
No. No it does not.
Swap Torpedo is the answer.
I designed it to be universal for any Android that Magisk version 15 and above supports. If you're not using swap, or if you installed your own swap solution that writes to a special file in storage, Swap Torpedo harmlessly does nothing.
Verify your swap situation with RAM Truth available on the Play Store. It's free and it will never spy on you or ask for special permissions.
Donations are humbly and gratefully received at [email protected] but not expected. My personal reward is knowing that I helped and you are having a better day now.
This module was developed entirely on an honor View 10.
Notes -
Some phones may need a few minutes after boot to clean up swap/zram - not all, just some - and that's completely normal
May not work on all devices but will probably work for you - ask here for help
Changelog -
(early change) 2018 April 27
Increased initial maximum wait time to 60 seconds. Your additional boot time will be about 3 seconds or so, usually less.
v1.1 - 2018 April 1 - functional improvement
Detached background processing, added Pixel and similar support.
Expanded zram command sequence for devices requiring stricter adherence to the rtfm.
Waits up to 45 seconds for swap to activate, expands support for non-flagship phones.
v1.0 - 2018 March 17 - initial release
Download -

Beta versions are exactly that so you may have trouble with Magisk 16.4 for example (or you may be ok) - please let me know, thanks!
Check out the v1.1 release at bottom of the first post above
Open Source -
https://github.com/Magisk-Modules-Repo/swap-torpedo
Just because it's open source does not mean that you ought to avoid giving me a few million dollars if you happen to be a billionaire. Let's face it, Swap Torpedo just made your life a lot better than the last guy you gave serious money to, and plus you'll have me in your corner verifying that regular billionaires such as yourself do too root and use Magisk. Trust me, the other billionaires will be so jealous they won't know whether to die or go bowling.
I hope that this clarifies the importance of open source software once and for all.
Thanks and Credits -
Nitin Gupta because real information comes in Courier, plain text or it didn't happen
@topjohnwu because in my mind I was totally going to invent Magisk first... OK don't be insane, I'm just kidding - Doctor Wu by Steely Dan is a great song and I'm not sure but I don't think it has anything to do with Magisk, no one really knows for sure - Magisk is great, mmmkay, thanks John
Special thanks to all of the heroes named by @topjohnwu and the unnamed ones as well. My people have an ancient saying that applies here - Without you, we'd be screwed!
Thanks to everyone in the thread who worked with me to help make Swap Torpedo better
Thanks to every one of you using the Swap Torpedo - I get that you get it
Finally, I thank my wife - she had nothing to do with Swap Torpedo but probably someday she'll say that I'm not grateful and I'm going to show her this special credit - I'm sure that will go really well for me, how about you?
Other Stuff -
Official module, 2018-3-26.
There's a shortcoming in RAM Truth that throws off the illustration in the first post - it misidentifies the swap type on Oreo and when vmswap is used. We're looking into that. If it says that your Android is using swap and you didn't put it there, Swap Torpedo is for you.
Secrets About Swap Torpedo -
Runs swapoff on every /dev entry in /proc/swap(s) during late boot. Making it universal may be harder than you think. Or not, I couldn't say.
That's it. Nothing else is left running from Swap Torpedo once the payload is delivered, nothing else is changed.
Your Android runs fewer processes and is slimmer and trimmer if you needed it (and you probably do) thanks to Swap Torpedo.
Uninstall the module and it will be as if it was never there. Swap Torpedo targets each boot session.
No more, no less.
A Quote -
EarlyMon said:
Use whatever works!
Swap Torpedo has no pixie dust nor do I expect it to ever get any.
I've had to redevelop this solution for years, every time I or a friend got a new phone saddled with swap.
I made this module so I could stop reinventing the wheel and so that it would be easier for others to enjoy the benefits.
If you have something already that gets rid of swap, or if the Swap Torpedo doesn't work for you, definitely use the other instead.
Check out "EX Kernel Manager"
https://play.google.com/store/apps/details?id=flar2.exkernelmanager
Check out "Kernel Adiutor (ROOT)"
https://play.google.com/store/apps/details?id=com.grarak.kerneladiutor
Click to expand...
Click to collapse

Thanks! Will check it out and report back after using it a bit.

Do I need this if I have Adaptive LMK and ZRAM disabled?
Sent from my HTC 10 using XDA Labs

Megan said:
Do I need this if I have Adaptive LMK and ZRAM disabled?
Click to expand...
Click to collapse
Nope.
The Swap Torpedo will check and discover that zram is disabled and exit without doing anything else in your case.

I'll wait until stable release

hoping this project grows. will watch this till end
---------- Post added at 03:29 PM ---------- Previous post was at 03:23 PM ----------
i got another phone with 500mb ram. This module will work as it says originally intended for 1gb ram below.

It runing ??
How to check this module is works.

lanserffnt said:
It runing ??
How to check this module is works.
Click to expand...
Click to collapse
That's how to check.
Did it reboot after installation?
Please show me what it says when you type in a terminal, as root -
Code:
cat /proc/swap*

Yes reboot after installed

lanserffnt said:
Yes reboot after installed
Click to expand...
Click to collapse
Please uninstall and try this test version, thanks.
(removed asus test module)
Which version of Magisk are you using?

Magisk 16.2

lanserffnt said:
Magisk 16.2
Click to expand...
Click to collapse
I haven't tested with the beta Magisk, highest I've gone is 16.
Did you try the new test version (linked above) yet?
If that doesn't work, have you installed the busybox-ndk?

I try it test3
Have install busyboxndk
Magisk 16.2
https://forum.xda-developers.com/apps/magisk/beta-magisk-v13-0-0980cb6-t3618589

lanserffnt said:
I try it test3
Have install busyboxndk
Magisk 16.2
Click to expand...
Click to collapse
I've had another user report that it works correctly with 16.2 so it must be something with the ASUS.

I use zenfone3
If It's work should show??

Pixel 2 P DP1 freezes on boot at the Google logo

Any pixel 2 xl?
Enviado desde mi Pixel 2 XL mediante Tapatalk

lanserffnt said:
I use zenfone3
If It's work should show??
Click to expand...
Click to collapse
0 swap, like the second picture in the first post.
Telperion said:
Pixel 2 P DP1 freezes on boot at the Google logo
Click to expand...
Click to collapse
That's unusual. May I ask what other modules you are using and what other modifications, if any?
And you used the one in the first post?

What should it show in terminal?
I am using it on LG G4 v29 (Nougat beta) and it doesn't show anything when I write "cat /proc/swap*". :/

Related

Swapper [0.1.3] - tool for creating and using swap

Simple application for "extending memory". Helps when you need some memory for non active applications (like music player + browser + maps + etc...).
Idea taken from http://forum.xda-developers.com/showthread.php?t=482228
Requires root and SD/SDHC card.
Warning: SD card will be used as swap space. It can (and will) shorten SD card lifespan.
Application creates/rewrites swapfile.swp file on sdcard and mounts it as swap. It can use swap partition too. It can change swappiness behaviour ( http://forum.xda-developers.com/showpost.php?p=3331080&postcount=33 )
Phone switches between tasks slower, but can run more programs in parallel.
Changes remains until reboot. Disable swap to eject/mount card.
It's my first application for Android. It goes as is, without any warranty. Use at your own risk.
Sorry for my English.
If You have any problems, please check http://code.google.com/p/a-swapper/wiki/Settings , it could contain some answers. If not, please feel free to fill bug.
Requested features
Configurable swap size
Configurable location of swap file (fixed location reset bug)
Autostart (some reports says it doesn't work)
Threaded swap creation
Widget
Memory buffer flusher (from pagubg)
Swap partition support
Permission fix
= finished = finished, needs testing = not finished
History
0.1.3: Swap partition support. Debug logging on problems.
0.1.2: a-c Test builds
0.1.1: 1.5 build. Autostart, interface changed.
0.0.6: Stable build. Works with version 1.5
0.0.5: Added some features (path to swap file, progress indicator). Tweaked visual apperance.
0.0.3: Added swappiness settings (Thank you for pointing it out, MoridinBG), some information output.
0.0.2: First release
Moved to code.google.com.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
http://code.google.com/p/a-swapper/
Consider changing the default swappiness behaviour, as described in my post at page 3 of the thread. With the default value, 60, the phone uses the impossibly slow swap too much and after some use the entire system becames unusable.
Lowering it to a lower value, like 20 or 10 makes it swap rarely, while still using the swap to not force applications to unload and the system is usable, even after long time use.
Does this really work? I tried it and set the swappiness to 10 and 20 and then went to the browser and loaded a bunch of "heavy" websites. After that I switched to the home screen and there was still a significant lag.
its working yes, program is probably good but swaping in embedded devices with so few memory like this is a terrible idea, keep testing anyway.
what maybe is worth the effort is looking at the kernel code and and recompile it removing first netfilter and some other unused things (or compile it as modules) to gain 1Mb or two, and gain significant speed removing the debug features that normal users doesnt want/need. there isnt much which can be done until someone figure out how to recover the other missing 128 mb who is said are eaten by graphic framebuffers.. i dont believe that.
Yes, there are some lags, but it's the best "user friendly" way now available not to close nessesary background applications as far as I know (correct me, if I'm wrong).
Working for me (I wrote application for easy turning it on and off - using swap only when nessesary, not all the time).
ex87 said:
Simple application for "extending memory". Helps when you need some memory for non active applications (like music player + browser + maps + etc...).
Idea taken from http://forum.xda-developers.com/showthread.php?t=482228
Requires root and SD/SDHC card.
Click to expand...
Click to collapse
First off, nice work with my initial idea
Questions however: Can you make the swap space size configurable? Also, I see that you went with my original hunch of /sdcard/ . This poses some challanges: it is required that swap is turned off before you can mount the card as a flash drive in your PC. There are also other issues I will probably be able to think of when I'm not so tired.
A configurable option of either /system/sd/ (for LucidREM's JFvMod build) or /sdcard (for those who havent moved the Apps/Data/Caches to SD) would be ideal!
Thanks for making a great quick gui! I have no idea where to start with java.
If any of Swapper users use LucidREM's JFvMod build - please test swapspace placing to /system/sd/ . Thank you!
Question
Yep, I'll be that first guy to ask the question. I will accept the consequences. Where can yo direct me to better understand the settings/configuration options available? I would like to understand this before I make changes. Also as a starter if you could recommend an appropriate config for an 8gb class 6 sd card, I would appreciate it.
Thanks to all!
Just to remind you. Set the Swappiness to 10 before or immediately after creating swap or you would experience incredible slowness in a couple of minutes.
Settings:
Swap size = size of file for swapping.Here info for reading http://en.wikipedia.org/wiki/Swap_space
Location = path where to place swap file (Locations button contains predefined paths, one is /sdcard/swapfile.swp, other is /system/sd/swapfile.swp - for those, who divided their sd cards for application sorage).
In program you have swappiness option - range 0-100 - how much you would like to swap. My tests showed that best performance/usability (for my sd+phone) is 32 MB swap and swappiness = 10. Your preferences can differ.
Changes are saved till system restart. After restart you should reenable swap and reset swappiness. Configuration about swap size and location is saved in program. Before configuring swap path please disable swap.
In default place swap is blocking mounting procedure of phone to pc. If you want to mount it, you should disable swap.
About sd configuration - here is one link with instructions. I haven't done it myself yet because of slow sdhc ("quick" sd card is only 1 GB) http://forum.xda-developers.com/showthread.php?t=480582
thanks
Thanks for the info. I apreciate not only the answers but a source to learn from. Rock on.
It makes the camera usable! Thanks!
I've been trying every convievable combination of swap size, location and swap levels.
I started with 32Mb and 15 which proved to be unstable then 10. So then 16Mb w/ swap @ 15 and 16Mb/10 which still provided to be unstable.
All the above combination tested on both /sdcard and /system/sd.
Is a class 4 just to slow for this to work? I'd imagine it wouldn't be but I cannot get this to run stable period.
joshtheitguy said:
I've been trying every convievable combination of swap size, location and swap levels.
I started with 32Mb and 15 which proved to be unstable then 10. So then 16Mb w/ swap @ 15 and 16Mb/10 which still provided to be unstable.
All the above combination tested on both /sdcard and /system/sd.
Is a class 4 just to slow for this to work? I'd imagine it wouldn't be but I cannot get this to run stable period.
Click to expand...
Click to collapse
I think it was discussed somewhere else. You need at least class 6 if you want to get any speed out of anything, especially "apps/caches on sd". Not sure about this swap deal. Sdhcs are considerably cheaper now days, I got my class 6 (8gb) for $18 from MicroCenter.
Good luck
So how do I revert to factory swap settings? I know I can set the swappiness back to 60, but what tells the system where the swapfile is?
when i run the lucidrems location save button, it doesnt start teh program. My cache is moved to the sdcard so i thought i should use this one. When i do it doesnt work.. if i switch back to the defualt it works fine again.. is it ok?
Hello! Sorry for delaying with answers, haven't much time, too much other things to do...
mlevin said:
So how do I revert to factory swap settings? I know I can set the swappiness back to 60, but what tells the system where the swapfile is?
Click to expand...
Click to collapse
After restart all system settings are back to default.
There is no default swap file.
no6969el said:
when i run the lucidrems location save button, it doesnt start teh program. My cache is moved to the sdcard so i thought i should use this one. When i do it doesnt work.. if i switch back to the defualt it works fine again.. is it ok?
Click to expand...
Click to collapse
I haven't tested this, it's theoretically working, but I haven't made mod myself. I'm now waiting for new SDHC class 6 card from ebay, will mod and test it. At the moment I have slow SDHC card. Swapper + mod will be too much for it
If you can, please check (after launching swapper swap on), do you have file named swapfile.swp in /system/sd.
This works great, I'm using 16mb/10swappiness on a class 2 and it works great with no crashes thus far!
is this bad for your SD card? Because it says " * SD card will be used as swap space. It can (and will) shorten SD card lifespan. "
G1-evolve said:
is this bad for your SD card? Because it says " * SD card will be used as swap space. It can (and will) shorten SD card lifespan. "
Click to expand...
Click to collapse
Yes, it is bad for your SD card, you "quoted" that sentence from the OP.
SD cards have a limited write cycle (10.000 or 100.000 times per "sector"), using it for swap in a specific region will shorten your card life.

[Tool/App] user.conf Creator v0.4 for CM and OfficialDonut [8/12/2010]

Update: v0.4 has been released. See changelog in the next post.
You can download the app using the link below or from the Android Market. Click or scan the barcode below.
This is essentially a visual representation of the user.conf file. I created this app because a few people I know have a hard time pushing files in terminal or ADB. This app allows you to push user.conf and userinit.sh files via an app. For people who have trouble editing their user.conf file or find terminal or ADB too complicated, here's your answer. There is no need to edit the user.conf file or even download one for that matter. You simply enter the values into the various boxes and click a button. That's it.
Complete help documentation is included within the app itself so I will not include it here, at least not now.
Important Note: This app does NOT validate your input. Please use the threads below to find out what values are necessary for your particular ROM.
This app is based off the user.conf and userinit.sh files found in the following posts:
For Cyan 3.6.8+
http://forum.xda-developers.com/showthread.php?t=542899
For Cyan 4.1.99+
http://forum.xda-developers.com/showpost.php?p=4823045&postcount=536
For Official Donut 2.1.1+
http://forum.xda-developers.com/showthread.php?t=538456
Screenshots
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
For the changelog, see the next post. Please keep this thread on topic. Do not post user.conf issues here. Post your user.conf issues to the proper thread using the links above. This app simply represents those user.conf/userinit.sh files. I will not change the structure of the files nor do I really know much about them. I am more than willing to answer questions regarding this app and hope to update it as needed.
********************************
Note: This may very well work on other devices. If someone can point me in the direction of user.conf and userinit.sh files for other devices I will add them to future versions of this app, time permitting.
********************************
This app is also in the Android Market.
After downloading, change the extension from .zip to .apk and install as you would any other non-Market app.
Changelog and TODO
Changelog
v0.4
• Added a bunch of different CPU frequencies, pretty much everything I found in SetCPU. I haven't tested this but since it just prints it to a user.conf file, it should work fine as long as the device supports the frequencies you set.
v0.3
• user.conf file actually gets pushed now. Big thanks to XDA forum member andrew richardson for pointing it out. Update above, in the Market and on SlideMe.org.
v0.2.1
• Name change to user.conf Creator (not user.conf Editor since you are only really creating the files, not editing them)
v0.2
• Added support for Cyan 3.6.8x+
• Added support for Official Donut
• Added option to backup you current file(s)
v0.1
• Initial release
TODO
• Add some seriously awesome validation.
• Add support for Hero ROMs (although untested,the Cyan 3.6.8x+ option should work)
• Add some presets
• Possibly look into making this an actual "editor" in that it will read your current user.conf file.
Looks like an extremely helpful app. Gonna check it out. I really only use linux swap so looks like i can focus on that and leave the default configurations for the other options, am i right?
This is a really good idea, and if you get the validation sorted, which you probably will, it will stop masses of people, including me stopping their whining. There will be little to no excuse of not being able to make your own user.conf, and I can see this being introduced to the big roms soon.
2leaponover1 said:
Looks like an extremely helpful app. Gonna check it out. I really only use linux swap so looks like i can focus on that and leave the default configurations for the other options, am i right?
Click to expand...
Click to collapse
Yes with a swappiness of 50.
AndroidAppCritic said:
Yes with a swappiness of 50.
Click to expand...
Click to collapse
Ok so I also only want to enable the linux-swap partition I have. I would just check the linux_swap_en correct? Then push file and reboot?
strikerz911 said:
Ok so I also only want to enable the linux-swap partition I have. I would just check the linux_swap_en correct? Then push file and reboot?
Click to expand...
Click to collapse
If you wanted to enable your linux-swap ONLY (with no other settings), simply open the app, select your ROM, push and reboot. By default, if you do nothing, the app will push a user.conf with linux-swap enable with a swappiness of 50 for Cyan 4.1.99+. Everything else is disabled (or rather, not enabled).
But like I said in the OP, any configuration issues should really be addressed in the proper thread since this is literally an exact copy of those files only with a GUI attached. While I have a pretty good understanding of the various settings, the people who write userinit.sh files know far more than I do.
Well, no issues here. =) Thanks for your immediate help. I appreciate it.
Would be nice if it could read our current settings.
bubonik said:
Would be nice if it could read our current settings.
Click to expand...
Click to collapse
Yeah, that was my original plan. But it's too much for me to do now. When my workload eases up at the end of December, perhaps I'll tackle that. I know how to do it but I just don't have the time now to write the code.
May I use it on any ROM or just on those three?
no user.conf
When I run the app it says it pushed the user.conf and the userinit.sh, but only the userinit shows up in the folder.
andrew richardson said:
When I run the app it says it pushed the user.conf and the userinit.sh, but only the userinit shows up in the folder.
Click to expand...
Click to collapse
I'll check it out.
EDIT: OMG. Hundreds of downloads and you're the first to notice that. WOW! I've been running an older version of the app so it's been working for me. I had commented out the lines in the code while testing something and never un-commented them. I am re-signed the package and will upload it here, in the Market and on SlideMe.org. Thanks for pointing out what should have been ridiculously obvious.
michal_banszel said:
May I use it on any ROM or just on those three?
Click to expand...
Click to collapse
It should work for other ROMs if they use the user.conf/userinit.sh files from the links provided in the OP. You can test for me if you wish and if there is a specific ROM for which you need support, let me know the ROM and where the user.conf/userinit.sh files are located and I will add it when I have time (not that I have much lately).
user.conf
yes i have a question.. i used your app and i pushed the files on the linux swap to 32 mb... so now when i type free in the terminal it reads
total used free
shared buffers
mem: 107100 104264 2836
0 652
swap: 31424 24944 6480
total: 138524 129208 9316
well the question that im asking is how can i turn the swap off back to 0..cuz before my swap read 31424 it read 0 across .. i really appreciate if i can get an answer .. thanks
AnGeL_WiT_SiNs said:
yes i have a question.. i used your app and i pushed the files on the linux swap to 32 mb... so now when i type free in the terminal it reads
total used free
shared buffers
mem: 107100 104264 2836
0 652
swap: 31424 24944 6480
total: 138524 129208 9316
well the question that im asking is how can i turn the swap off back to 0..cuz before my swap read 31424 it read 0 across .. i really appreciate if i can get an answer .. thanks
Click to expand...
Click to collapse
Are you asking how you can turn your linux-swap off? I'm having trouble understanding your question. If you want to turn the linux-swap off, uncheck all the linux-swap, compcache and swap file checkboxes and re-push the files.
Holy crap! I just got a new SD card (8GB Class 4) and set this up with the settings from the rist post and it SCREAMS!! Hopefully it will be stable with thtese settings. I am running Cyan 4.2.7.1 on G1.
Time for New release?
I am trying to use this with CM 4.2.13 to enable 32mb compcache + the backingswap feature (32mb swap partition). When I set the checkmarks for these items & pushed the file & rebooted my phone lagged really bad so I 'pulled' the files over to SD with the backup option & renamed to .txt so I could view in a notepad app rather then in terminal... low & behold the default app settings had been pushed, not my selected settings. I am wondering if something drastic has changed within CM that would mess with your file creation or what else could have caused this? (I am not leaving out human error on my part) I went into terminal & rm /system/sd/ user.conf & userinit.sh so i can try again clean. Please tell me you are still actively supporting this app! I love its potential for ease of use in manipulating these files.
Also I'm not sure what settings I should put in on compcache+backingswap, here is whats running on my phone...
I have (on my sig phone/SDcard/ROM) blackicedroid theme with stericson lockscreen & advanced launcher built in, 4 home screens,
Widgets : last.fm, myspace friend status, facebook status, Google Calandar, android power control bar, F*ck my life 1x4, three weather bug small (1x1)...
17 app shortcuts
Active background Apps : Twidroid, eBuddy (logged into 2 chat accnts), Craigsnotifica (15 regions being scanned).
~psguardian
i need a little help
Hey guys, I think your app is amazing dude. I'm fairly new the rooting my phone, I have done a lot of similar things in the past, but never involving a phone. I have a T-Mobile myTouch 3g, i love this phone, but i wanted to see what it could do. i work with other T-Mobile coworkers and many of them rooted using the CyogenMod. Today there was a bad snowstorm so i stayed in and rooted my myTouch. everything went great! i love this phone so much more, i cant believe it!
Anyway, i know i can over clock it. and i saw that the creator uses a myTouch so i figured I followed his photo settings in the first post. I want to over clock my phone to the best of its abilities but I don't really wanna push it TO its limits. I'm just wondering if basically those two settings scaling_min_freq and scaling_max_freq are what is going to control the processing speeds, and what is best in my case? I initially followed AndroidAppCritic's same values, but I lowered my max value to the 300K limit. Is that a ok? I mean, I'm guessing it lets my phone only really reach that max value when it needs to, but what does the minimum speed have much to do with it? I set mine to the same 245760, but should I lower this since I'm running a lower maximum frequency than 528000?
Thank you.
I can't update or install any apps, it says there isn't sufficient memory.
I have a G1 with cyanogenmod 4.2.14.1 with
apps2sd checked
compcache_en checked with 32 cc_disksize
cc_backingswap checked with 60 swappiness
I don't know what I'm doing wrong but help would be greatly apreciated. And also my swap partition is 128MB since I tried a rom that required that much and I decided to keep it like that but I'm pretty sure that's not the problem, is it?

Custom 2.2.2

Took a break from porting 2.3 and threw together this themed 2.2.2
Its Gingerbread themed, a few graphical elements are missing though.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Install through ClockworkMod
Wipe first in CWM ONLY, user data, and cache.
Download
http://www.multiupload.com/WSDGWB5XM1
Install another launcher, our display isn't good enough for the default.
Its late, I have to get some sleep for work in the morning. Will post credits, and detailed instructions later.
Also, Its looking like a ghost town in here, we need more roms. I can help those interested in compiling. You can use the Android Kitchen to get started.
Thanks for your contribution
Sent from my Dell Streak 7 using XDA Premium App
Seems like screen resolution is screwed up a little in wallpapers
Edit: in your stock launcher is the only place I see size issues but I am loving this rom running very smooth
Sent from my Dell Streak 7 using XDA Premium App
bout to give this a go
Do you have any screens to share?
Does this have djSteve's tweaks?
^ Posted a pic, and what tweaks?
Will post new rom with full info this weekend. Lots of new tweaks, additions, and subtractions.
Stay tuned.
Thank you streaker!
I agree on the lack of ROMs. I'm going to start to try to develop something simple (I'm self-teaching Java and Linux; what better way to learn than to tweak?).
I'll be downloading the Kitchen and playing with it in a couple of days's time, if not sooner. Since you offered, I'll ask for help when I get stuck!
Are you still working on a 2.3 ROM? Can a n008 offer any assistance? I really want to get my feet wet in development (apps or ROMs), so if I can be at all useful I will be.
vetvito said:
Took a break from porting 2.3 and threw together this themed 2.2.2
Its Gingerbread themed, a few graphical elements are missing though.
Install through ClockworkMod
Wipe first in CWM ONLY, user data, and cache.
Download
http://www.multiupload.com/WSDGWB5XM1
Install another launcher, our display isn't good enough for the default.
Its late, I have to get some sleep for work in the morning. Will post credits, and detailed instructions later.
Also, Its looking like a ghost town in here, we need more roms. I can help those interested in compiling. You can use the Android Kitchen to get started.
Click to expand...
Click to collapse
idk if you are doing this, but it won't hurt to repeat it
make sure you wipe data/cache before you capture the cmw image this way you can avoid some issues for people flashing
I'll be flashing this in a sec, here. Gotta love more Streak 7 devs!
Did you make this in ROM Kitchen? If so, how did you go about it? I couldn't get ROM Kitchen to work on my S7.
Great to see some more developers! I'll definitely give this a go.
So I loaded it up and slapped on Zeam launcher; I have to say, it's pretty nice. This is basically vanilla, stock 2.2.2 with the bloat removed and a black bar (with some Gingerbread theme touches here and there). This is a great alternative to stock, and seems to run everything really smoothly. Nice mod!
Looking forward to the weekend version!
But quick question, if i go about flashing this, while in DJs HS7, do i have to return back to the stock then flash cwm then flash the rom?
RavenSEAL said:
Looking forward to the weekend version!
But quick question, if i go about flashing this, while in DJs HS7, do i have to return back to the stock then flash cwm then flash the rom?
Click to expand...
Click to collapse
Yes, you do. Unfortunately, there's not CWR for HC, yet (and, even if there were, I don't know that it would allow flashing FroYo ROMs).
Z4nd4r said:
Yes, you do. Unfortunately, there's not CWR for HC, yet (and, even if there were, I don't know that it would allow flashing FroYo ROMs).
Click to expand...
Click to collapse
Figured :S
I don't wanna risk destroying my internal memory
Installed and working perfectly. Im using vtl launcher. Very fast and works well!!! Thanks much and im looking forward to future releases.
Suggestions :
1) maybe a battery icon w / percentage
2) go launcher or vtl launcher
3) any cooked in file explorer
4) a modified wpa supplicant file to allow adhoc tethering
4) maybe a task killer. Im using autokiller memory optimizer and free mem stays near 150
Great work!!
pyraxiate said:
Installed and working perfectly. Im using vtl launcher. Very fast and works well!!! Thanks much and im looking forward to future releases.
Suggestions :
1) maybe a battery icon w / percentage
2) go launcher or vtl launcher
3) any cooked in file explorer
4) a modified wpa supplicant file to allow adhoc tethering
4) maybe a task killer. Im using autokiller memory optimizer and free mem stays near 150
Great work!!
Click to expand...
Click to collapse
FroYo has very good, built in task management. Task killers generally hurt performance and battery life. Android isn't Windows; it's Linux. Having little free memory isn't a bad thing.
Z4nd4r said:
FroYo has very good, built in task management. Task killers generally hurt performance and battery life. Android isn't Windows; it's Linux. Having little free memory isn't a bad thing.
Click to expand...
Click to collapse
Hence why I said "maybe " a task killer. Mine without one hits that critical 40 - 50 mb ram level where things start to lag (I have a ton of apps installed which like to run as a background service even though I only use them once or twice a week) . Also if you researched.... most task killers do NOT REPLACE stock task management....they merely lower or raise values already in place. This means closing idle processes a little faster than default ( if I don't use an application in 12 hrs....do I really need it running in the background??????) Also, you can set limits on oom values for specific tasks so they have a lower / higher priority. There are absolutely advantages to task managers......
One good example...... without it, when my memory ran in the critical 40 mb range, ebuddy services would shut off.....which is one app I WANT running 24/7. Using a task manager I can set its oom value to -17mb which virtually keeps it alive even if the system goes into swap. Also another I change values on is gmail so it can background sync and I don't worry about it closing syncing services.
Anyway, I hope that clears some things up for you if you ran as many apps as I do, and don't have a completely fresh installed os, they are absolutely helpful I know that free ram ia wasted ram ....but that only holds true until you hit the levels at which the system needs to operate properly. Don't forget....you DO need SOME ram for cache / swap!!! ( 70-100mb free keeps things perfectly smooth)
Also, an fyi for you. I know android isn't windows. I am linux guy myself and have compiled many things from source. While I may not be a GURU, im no where near a novice. I understand how the OS works. Try running ubuntu 11 on 64 -128 mb ram and tell me how free ram isn't important.
pyraxiate said:
Hence why I said "maybe " a task killer. Mine without one hits that critical 40 - 50 mb ram level where things start to lag (I have a ton of apps installed which like to run as a background service even though I only use them once or twice a week) . Also if you researched.... most task killers do NOT REPLACE stock task management....they merely lower or raise values already in place. This means closing idle processes a little faster than default ( if I don't use an application in 12 hrs....do I really need it running in the background??????) Also, you can set limits on oom values for specific tasks so they have a lower / higher priority. There are absolutely advantages to task managers......
One good example...... without it, when my memory ran in the critical 40 mb range, ebuddy services would shut off.....which is one app I WANT running 24/7. Using a task manager I can set its oom value to -17mb which virtually keeps it alive even if the system goes into swap. Also another I change values on is gmail so it can background sync and I don't worry about it closing syncing services.
Anyway, I hope that clears some things up for you if you ran as many apps as I do, and don't have a completely fresh installed os, they are absolutely helpful I know that free ram ia wasted ram ....but that only holds true until you hit the levels at which the system needs to operate properly. Don't forget....you DO need SOME ram for cache / swap!!! ( 70-100mb free keeps things perfectly smooth)
Also, an fyi for you. I know android isn't windows. I am linux guy myself and have compiled many things from source. While I may not be a GURU, im no where near a novice. I understand how the OS works. Try running ubuntu 11 on 64 -128 mb ram and tell me how free ram isn't important.
Click to expand...
Click to collapse
LOLZ, ubuntu?
Vanilla linux can run fine on 64mb of ram
Sure it can...but not with a current version of gnome or kde maybe using xfce or window maker. Those don't need much resource. I stated ubuntu due to its popularity lol
Was just making a point on the necessity of SOME free ram
Side note.... did you see ubuntu is functional on the streak 7 ???? Awesome!! I can't wait until it is completely ready to go. I've been experimenting trying to get any desktop session up and running but no good so far It wont be long though!!!

[PORT] Ubuntu 13.04 Alpha (very)

Ubuntu 13.04 Alpha for HP Touchpad
*working sound (I think you will like the volume button sounds)
*working wifi powered on at startup
*working bluetooth powered on at startup
*working 5 finger gestures with touchegg
*DeLorean Dark Theme
*custom Kernel+Modules for Wine+Qemu Add-on?
*Did I mention Wine Add-on? To play solitaire and space cadet pinball. They are in Applications Other..
*SquashFS Added
*A bunch of hacks.. they removed /etc/fstab and if you try to add an entry like I did then udev won't boot! I used the /etc/init.d/audiod_srv file to mount what I wanted.
*Freedreno latest with Mesa (THANK YOU ROB CLARK AND JCSULLINS, Calc1Programmer, BodenM, castrwilliam, Mystikal57!)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
You will need the Kernel that comes with it.
If you want to run wine x86 with qemu.. Simply put the wine.sqsh file on your sdcard when you boot.
I did that to save space.. and so people can toggle back and forth. I originally had wine merged into the filesystem but now everything symbolically links to /usr/gnemul. That is my other "fun" project. Wine 1.5.23 with Qemu 0.14.1 with NPTL patch. Barely runs. http://wiki.winehq.org/ARM x86 per Qemu.
Links....
http://www.gdriveurl.com/?idl=913607779492&out=2 4GBUbuntuInstallSystem13Alpha.sh
http://www.gdriveurl.com/?idl=913607779509&out=2 Rootfs.tar.gz
http://www.gdriveurl.com/?idl=713607779506&out=2 uImage.Ubuntu13
http://www.gdriveurl.com/?idl=913607779518&out=2 wine.sqsh
This is a link to the original thread that started it.
http://forum.xda-developers.com/showthread.php?t=1304475 By BodenM
To Install:
Become familiar with the Ubuntu on HP Touchpad project. Try other builds.. 11.10, 12.10 if you feel the need. Read the 87 page thread above. You need to have a 4GB Partition created for ubuntu to be installed on before hand. This is a branch of an ongoing project.
http://code.google.com/p/hp-touchpad-ubuntu/wiki/Installation
Step 6 ends with you about to extract the file on the sdcard to the ubuntu partition. That is what you need to be familiar with.
Be handy with Novacom. That is a way to get root access to the touchpad in webos.. There are a TON of sites that cover this. Google it.
Do this in novacom.. you should have a bash shell with root at /media/internal
Place Rootfs.tar.gz and wine.sqsh and 4GBUbuntuInstallSystem13Alpha.sh and uImage.Ubuntu13 on the sdcard. You WILL need to replace the Kernel to run wine. If you don't and want to use your own kernel, then you MUST replace the modules. If you run your kernel with my modules you MIGHT get a reboot when using a lot of bandwidth over wifi. If I ftp'd a file over wifi, it would crash. I had to recompile ath6k to get around that. That is what happens 100% of the time if I use my kernel with the standard modules that we have been playing with. It's because my kernel is compiled with VMSPLIT-3G and it affects ath6k unless it gets recompiled along with the kernel.
TO INSTALL KERNEL
mount -o remount,rw /boot
cp /media/internal/uImage.Ubuntu13 /boot/uImage.Ubuntu
mount -o remount,ro /boot
sync
TO INSTALL FILE SYSTEM
sh /media/internal/4GBUbuntuInstallSystem13Alpha.sh
when it's done you should have it.
PROBLEMS YOU MAY ENCOUNTER:
Touchscreen may stop responding. If it does do a 5 finger tap to verify that. You may need to do it a couple of times. That seems to help. 5 finger tap is like pressing the start\windows key on your keyboard.
I added 3 startup programs
1. Touchegg
2. Sound enable unmuting at login
3. Bluetooth enable at login
Touchegg can be removed by just going to startup applications and removing it. That will go back to single touch. Check out the gestures and the onscreen keyboard. Hold down on a mouse key and then click on an icon. It should work. Easier to resize the keyboard.
DOUBLE CLICKING WITH TOUCHEGG
You can two finger click for a double, use the onscreen keyboard.. or do a fast double to triple tap.. It is odd.. Somethings can't be double clicked very easily and some can....Maybe you guys can help with that? Maybe its a 13.04 Alpha thing.
THREE FINGER SWIPE UP AND DOWN MAXIMIZES AND MINIMIZES.
It's alpha.. No, really.
http://cdimage.ubuntu.com/daily-live/current/
http://cdimage.ubuntu.com/daily-live...rmhf+omap4.img
Amazing !
Very happy for multi touch and freedreno !
Could you share kernel sources on github please ? If we made any modifications, it could be good to have the same kernel's base :good:
Keep up the good work
<--Ubunutu newb. How do I change the font color? I can't read anything when searching Software Center.
mdleal said:
<--Ubunutu newb. How do I change the font color? I can't read anything when searching Software Center.
Click to expand...
Click to collapse
TweakTool doesn't work... You have to go to dconf editor.. Go to like org, desktop, interface.. you can change themes and stuff like that.
Mystikal57 said:
Amazing !
Very happy for multi touch and freedreno !
Could you share kernel sources on github please ? If we made any modifications, it could be good to have the same kernel's base :good:
Keep up the good work
Click to expand...
Click to collapse
Thanks! No problem will soon.. All I did was change 3 things in the config file.. 2 for wine and 1 for squashfs. The kernel is from CyanogenMod. I will also post the freedreno sources.. BodenM also has them available.. The kernel.. It just doesn't have the 2 changes for wine.. We could run wine 0.9.x and keep the kernels that we have.. But that is less fun.
EDIT! I added you to the thank you list! I knew you sounded familiar! Thanks for the sound! GREAT JOB! Seriously.. I saw how you are doing it.. That is ingenious, using webOS for sound.
links dead
links dead:crying:
WTH
Why did the links die.. Don't tell me Google Drive changes the links... That would suck.
Unfortunately the OP appears to have based this on my 12.10 beta1, not my 12.10 final. I'm making an overlay tarchive that will fix most of the bugs, along with a few I didn't encounter on my release.
Bugs which will be fixed:
SDcard is mounted with incorrect uid/umask (Downloads aren't writable, etc.)
PulseAudio crashes in middle of long outputs (like music) - This requires the disablement of PulseAudio. Sorry, no OSX-like volume sounds.
No kexec capable kernel.
/dev/mmcblk0p13 is mounted on top of existing files in /boot, making it difficult to install kexec kernel.
No swap or zram.
Most init scripts are in obsolete /etc/init.d format.
Major remaining bug: Freedreno won't support EXA. We need an EXPERIENCED kernel CODER (not me) to fix our kernel by PROPERLY backporting KGSL from Kernel 3.0.8 to 2.6.35. I don't see any other solution, because I don't think the person who is workiing on Freedreno wants to backport their driver.
Soon-to-be-added feature: Automount of other OS's filesystems, if they exist, under /mnt.
nice
castrwilliam said:
Unfortunately the OP appears to have based this on my 12.10 beta1, not my 12.10 final. I'm making an overlay tarchive that will fix most of the bugs, along with a few I didn't encounter on my release.
Bugs which will be fixed:
SDcard is mounted with incorrect uid/umask (Downloads aren't writable, etc.)
PulseAudio crashes in middle of long outputs (like music) - This requires the disablement of PulseAudio. Sorry, no OSX-like volume sounds.
No kexec capable kernel.
/dev/mmcblk0p13 is mounted on top of existing files in /boot, making it difficult to install kexec kernel.
No swap or zram.
Most init scripts are in obsolete /etc/init.d format.
Major remaining bug: Freedreno won't support EXA. We need an EXPERIENCED kernel CODER (not me) to fix our kernel by PROPERLY backporting KGSL from Kernel 3.0.8 to 2.6.35. I don't see any other solution, because I don't think the person who is workiing on Freedreno wants to backport their driver.
Soon-to-be-added feature: Automount of other OS's filesystems, if they exist, under /mnt.
Click to expand...
Click to collapse
keep up the good work dude
Okay.. I updated the thread with the new url's and ran them through google drive url to create permalinks.. They should now be permanent. Why google? Why.... Pain in butt.
netkillercat said:
keep up the good work dude
Click to expand...
Click to collapse
castrwilliam said:
Unfortunately the OP appears to have based this on my 12.10 beta1, not my 12.10 final. I'm making an overlay tarchive that will fix most of the bugs, along with a few I didn't encounter on my release.
Bugs which will be fixed:
SDcard is mounted with incorrect uid/umask (Downloads aren't writable, etc.)
PulseAudio crashes in middle of long outputs (like music) - This requires the disablement of PulseAudio. Sorry, no OSX-like volume sounds.
No kexec capable kernel.
/dev/mmcblk0p13 is mounted on top of existing files in /boot, making it difficult to install kexec kernel.
No swap or zram.
Most init scripts are in obsolete /etc/init.d format.
Major remaining bug: Freedreno won't support EXA. We need an EXPERIENCED kernel CODER (not me) to fix our kernel by PROPERLY backporting KGSL from Kernel 3.0.8 to 2.6.35. I don't see any other solution, because I don't think the person who is workiing on Freedreno wants to backport their driver.
Soon-to-be-added feature: Automount of other OS's filesystems, if they exist, under /mnt.
Click to expand...
Click to collapse
Cool! Yeah I realized the sdmount problem yesterday.. You had to wait until I gave it its own thread! :laugh: Waiting to update! Good job! What is the main benefit to the kexec kernel? Will update the files with your fixes!
And.. it's a little bloated.. :laugh:
Aww man.. Does this mean we have to use alsamixer? What is a good replacement for that in gnome?
My last setup had VLC and gstreamer both configured to use "plug:dmix" so that you could dstill have multiple sounds playing at one time.
A good mixer is "xfce4-mixer". Despite the name, it doesn't pull in too much XFCE bloat.
You can in theory still run PulseAudio as a dmix client but of course you will then have the complexity of multiple independent mixer applications. The best PA mixer is "pavucontrol", not the one in Control Center, because it has both Windows-style per-app volume controls AND global playback and recording controls by source/sink.
any problem in first use:
1) gnome-tweak-tools does not work for change black theme and other option
2) initramfs cant update
3) many packages dont need in tablet
4) compiz, rotate screen cant work correctly
5) i have any problem in reboot and halt tablet
6) cant access to flash memory ,permission denied.
7) cant detect vga driver, i guess ubuntu 11.04 for tablet can be detect it.
8) panel widget options dont work correctly in touch finger
9) installed webserver such az apache does not work. http://localhost , could not find server
10)cant access to internal memory ,permission denied.
11)plymouth couldnot disable/remove from kernel
Made an account to say thank you.
Wonder if it can be overclocked to 1.8ghz from within Ubuntu. Also rsyslog took up a lot of CPU cycles so I deleted it. udevd takes up a lot of cycles as well but you can't really delete that afaik, but killing it after boot seems to not have much adverse effects, and the tablet runs smoother as a whole afterwards.
Thank you for the nice new toy for our tablet! I successfully installed it on a 6GB partition. So far I can report the following things:
Pros:
- more responsive touchscreen than on 12.10
- better working onboard virtual keyboard than on 12.10 - resize, move, pop-up - working great
- very nice multi-touch gestures for scrolling, maximize, minimize and right-click
- I feel it faster and better responding than 12.10 - may be this is becuase of the optimizations in 13.04
Cons:
- volume keys doesn't increase or decrease the audio
- dnsmasq uses a lot of the cpu - need to kill it
- internet access stops after a while, although the Wi-Fi is connected - need to reconnect the wi-fi, can this be related to killing dnsmasq?
- udevd uses a lot of the cpu - need to kill it - I ran "udevadm monitor" and I can see only reports for the battery and something else (not known) on 5 secs refresh basis
- rsyslogd uses a lot of the cpu - need to kill it
- System Settings panel is bigger than the screen - can not resize it
- VLC can not play song after song - resource is not available - I think this is reported already
- no swap partition
If anyone else experience this you can report it, I think this will be useful for further optimiziations and fixes.
Also is it a good idea to have a repo with the kernel and distro, so we can make/sync/test changes?
@jshafer817,
Sorry for the lame question, but do you use an already compiled distro, or you compile it on your own?
I have a problem. WiFi worked correctly after the very first boot but every boot now it just connects to my WiFi network but doesn't actually establish a connection. My WiFi is working fine though on webOS and my laptop with Ubuntu (all on the very same network). I tried removing it from network manager and connecting all fresh again but it still doesn't give me a connection.
Anyone has an idea on how to fix it?
---------- Post added at 12:50 PM ---------- Previous post was at 12:49 PM ----------
stdinov said:
Thank you for the nice new toy for our tablet! I successfully installed it on a 6GB partition. So far I can report the following things:
Pros:
- more responsive touchscreen than on 12.10
- better working onboard virtual keyboard than on 12.10 - resize, move, pop-up - working great
- very nice multi-touch gestures for scrolling, maximize, minimize and right-click
- I feel it faster and better responding than 12.10 - may be this is becuase of the optimizations in 13.04
Cons:
- volume keys doesn't increase or decrease the audio
- dnsmasq uses a lot of the cpu - need to kill it
- internet access stops after a while, although the Wi-Fi is connected - need to reconnect the wi-fi, can this be related to killing dnsmasq?
- udevd uses a lot of the cpu - need to kill it - I ran "udevadm monitor" and I can see only reports for the battery and something else (not known) on 5 secs refresh basis
- rsyslogd uses a lot of the cpu - need to kill it
- System Settings panel is bigger than the screen - can not resize it
- VLC can not play song after song - resource is not available - I think this is reported already
- no swap partition
If anyone else experience this you can report it, I think this will be useful for further optimiziations and fixes.
Also is it a good idea to have a repo with the kernel and distro, so we can make/sync/test changes?
@jshafer817,
Sorry for the lame question, but do you use an already compiled distro, or you compile it on your own?
Click to expand...
Click to collapse
For System Settings, that's not a problem from this port at all. On the desktop it's also non-resizable.
And the volume keys work fine here.
3.0.8 is working.. sort of
Wifi and Touch are working with KGSL and EAX in 3.0.8
jshafer817 said:
Wifi and Touch are working with KGSL and EAX in 3.0.8
Click to expand...
Click to collapse
Weren't those the big things? Then what's still broken?

mFSTRIM: A REAL, FOSS fstrim utility for Android, no root necessary

Hey XDA!
I actually just posted about another app called Buoy, but over my spring break I went ham and made four apps and I wanted to show off two of them to get some feedback. So here's mFSTRIM!
What is fstrim?
So you know how hard drives get fragmented over time right? Data is placed far apart from other data, increasing latency as the disk needs to physically seek to a certain partition of the disk to read/write data. Well, flash storage doesn't really get fragmented. Instead, when parts of the flash are deleted, the system doesn't actually have a way of knowing which sectors it doesn't care about anymore, and which ones it does. So we go through periodically and TRIM (hence fstrim, the command line utility that does this) all the unused blocks so the system can use them again.
Doesn't Android ALREADY fstrim regularly?
Well, sorta. Newer versions of Android will check at midnight if the device is alive at midnight and is currently charging. If so, it will run fstrim during the next time the device is idle and charging. But what about if that can't happen? I, for one, don't plug my phone in overnight because I care about my battery health. Android also imposes an upper limit! If the device has not run fstrim within the past 3 days, it will force one during the next bootup. And here's where mFSTRIM comes in...
How does mFSTRIM work?
mFSTRIM uses Secure Settings to change how long Android can go without an fstrim before forcing one during bootup. With that logic, we can set that interval to 1 millisecond (aka, one is ALWAYS needed), so that during every reboot, an fstrim is done.
Links
Play Store: https://play.google.com/store/apps/details?id=com.draco.mfstrim
GitHub: https://github.com/tytydraco/mFSTRIM
Feedback is appreciated!
Is there a free version?
orb3000 said:
Is there a free version?
Click to expand...
Click to collapse
Hi,
Sorry, I didn't release a free version since the app is really simple. But just a tip: once you change the setting, it persists even after you uninstall. So do what you want with that information
This is awesome! Any chance to add the ability to run fstrim whilst in the app on demand?
fobtob387 said:
This is awesome! Any chance to add the ability to run fstrim whilst in the app on demand?
Click to expand...
Click to collapse
Hey! Sadly this isn't possible due to the way the app works. Internally in Android there's a setting that tells the system the longest we can go without doing an fstrim on bootup. My app simply changes this setting. The fstrim is actually done by Android still, not my app. Since the only time Android checks our newly changed setting is on a reboot, we have to reboot to make it happen. With root I can do what you suggested, but sadly without root it's not possible.
tytydraco said:
Hey! Sadly this isn't possible due to the way the app works. Internally in Android there's a setting that tells the system the longest we can go without doing an fstrim on bootup. My app simply changes this setting. The fstrim is actually done by Android still, not my app. Since the only time Android checks our newly changed setting is on a reboot, we have to reboot to make it happen. With root I can do what you suggested, but sadly without root it's not possible.
Click to expand...
Click to collapse
Would it be possible to make a root variant?
fobtob387 said:
Would it be possible to make a root variant?
Click to expand...
Click to collapse
It's possible! Also, you can run this via the command line with ADB (no root): adb shell sm fstrim
That forces an fstrim
Nice app! I set it to fstrim on reboot, and sure enough the "last-fstrim" file was modified at boot to confirm fstrim took place. The app is free in the Play Store now (reading the previous comments and it seems this may not have been always the case). I also like that the app doesn't use the network for anything at all (no analytics). I'm rooted, so it did ask me to grant root when starting it up for the first time.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Hey! Can we please be able to create a custom interval for fstrim?
My phone becomes slow after like 5 mins of fstrim so I'd need this to run every like 1-2 seconds. I don't want to root my phone xd
Auditormadness9 said:
Hey! Can we please be able to create a custom interval for fstrim?
My phone becomes slow after like 5 mins of fstrim so I'd need this to run every like 1-2 seconds. I don't want to root my phone xd
Click to expand...
Click to collapse
No
No
No
No, you definitely do not want to fstrim every 1-2 seconds
No.....
Your "slowness" probably comes from the discard option on the mount point, if its EXT4, takes longer to do its job
Running fstrim multiple times wont fix that
73sydney said:
No
No
No
No, you definitely do not want to fstrim every 1-2 seconds
No.....
Your "slowness" probably comes from the discard option on the mount point, if its EXT4, takes longer to do its job
Running fstrim multiple times wont fix that
Click to expand...
Click to collapse
Oh bummer. And what would fix that slowness then?
Auditormadness9 said:
Oh bummer. And what would fix that slowness then?
Click to expand...
Click to collapse
Without root nothing you do will change a thing
fstrim other than the stock ROM scheduled one will not work without root
73sydney said:
Without root nothing you do will change a thing
fstrim other than the stock ROM scheduled one will not work without root
Click to expand...
Click to collapse
Got it. And one more thing. Do you think this would work if I had root?
SSD Boost - Apps on Google Play
Minimizes writings on the your phone's SSD, increasing speed and extending life
play.google.com
Auditormadness9 said:
Got it. And one more thing. Do you think this would work if I had root?
SSD Boost - Apps on Google Play
Minimizes writings on the your phone's SSD, increasing speed and extending life
play.google.com
Click to expand...
Click to collapse
For starters its not my app, and theres no real detail on what it does beyond change a few mount point options - which you can probably find already (depending on android level and ROM) exists (noatime already on my ROM) by the following in a terminal:
mount | grep noatime
and/or
mount | grep nodiratime
As for its other listed function, running TRIM on demand, theres this app which has been around forever and is ad free
Trimmer (fstrim) - Apps on Google Play
Trim your device NAND chip manually and fix lags.
play.google.com
As for the app you quoted generally, realise its *possible* to brick your device doing some of the things it claims, so check the warnings
Also the author even points out it doesnt actually boost an SSD, it just changes some kernel and mount options that *may* improve filesystem performance
Note: I just tried running SSD Boost on my Pixel 2XL...toggled it on, and it sat there forever saying "Boosting your SSD", and sat there a long time (to the point i thought id have to kill it), and then showed it had made some changes (factoring in i already had noatime set)
Heres some tests before
and after....
Androbench:
Seq Read: +15MB/s
Seq Write: +12MB/s
Ran Read: -3MB/s
Ran Write: +0.4MB/s
SQLite Insert: -57 QPS
SQLite Update: -101 QPS
SQL Delete: -74 QPS
SD Card Test Pro:
Write: +95MB/s Read: +20MB/s
Would i bother installing it (if its safe for your device)...as always , up to the individual. As always these are benchmarks, and just a snapshot in time, real world result in real world usage, dunno if you’d notice
73sydney said:
Without root nothing you do will change a thing
fstrim other than the stock ROM scheduled one will not work without root
Click to expand...
Click to collapse
Why are you posting misleading info? The other user (quote below) actually verified the operation, and it works!
ninjæon said:
Nice app! I set it to fstrim on reboot, and sure enough the "last-fstrim" file was modified at boot to confirm fstrim took place. The app is free in the Play Store now (reading the previous comments and it seems this may not have been always the case). I also like that the app doesn't use the network for anything at all (no analytics). I'm rooted, so it did ask me to grant root when starting it up for the first time.
View attachment 5382223
Click to expand...
Click to collapse
I observed the same change in last-fstrim date! The utility works, it's great!!! Surprising so few people noticed it ...
Thanks for this!
Somewhat related question: will TRIM prevent data recovery?
From my understanding, when you delete data from an SSD it will just remove it from being viewed and allow it to be overwritten but the data is still there and can be recovered through recovery apps or forensics.
Does TRIM prevent this?
DonDizzurp said:
Thanks for this!
Somewhat related question: will TRIM prevent data recovery?
From my understanding, when you delete data from an SSD it will just remove it from being viewed and allow it to be overwritten but the data is still there and can be recovered through recovery apps or forensics.
Does TRIM prevent this?
Click to expand...
Click to collapse
It's a complicated question, each implementation is different. TRIM will tell controller the blocks are unused, not sure if anything else happens to them. Read some of this to get an idea:
Perform a SSD Secure Erase - Thomas-Krenn-Wiki-en
In this article, we will show you how to perform a secure erase on a SSD under Linux. By doing this, you can increase the performance of frequently used SSDs for future use. But, all of the data will be lost. For Fusion-io’s ioDrives, see Low-level Formatting a Fusion-io ioDrive.
www.thomas-krenn.com
I am going to post the actual command to activate this as there is nowhere I can find that has in even the repository. Even though the command is stated on the display, you still have to manually type it so here it is:
adb shell pm grant com.draco.mfstrim android.permission.WRITE_SECURE_SETTINGS
Enjoy
This app only adds a Global Table parameter called "fstrim_mandatory_interval", set to 1 if you choose every reboot. This is possible with SetEdit and ADB very easily (in 10 seconds) and it is permanent. I am a bit surprised that a whole app has been made only to set this one parameter. Also, the parameter is not effective on a lot of ROMs. If OP's app is paid, that is ridiculous; I sure hope it is not!
With magisk root, you can make a script that runs on every boot running fstrim through busybox. That's what I do, because this parameter used in the app is useless; automatic fstrim is not run on any MIUI ROM I have tried so far.
I have no idea why OP states it adds a Secure Table parameter; I have not seen such being added.
Note that these are my observations and could be wrong.
nosak said:
This app only adds a Global Table parameter called "fstrim_mandatory_interval", set to 1 if you choose every reboot. This is possible with SetEdit and ADB very easily (in 10 seconds) and it is permanent. I am a bit surprised that a whole app has been made only to set this one parameter. Also, the parameter is not effective on a lot of ROMs. If OP's app is paid, that is ridiculous; I sure hope it is not!
With magisk root, you can make a script that runs on every boot running fstrim through busybox. That's what I do, because this parameter used in the app is useless; automatic fstrim is not run on any MIUI ROM I have tried so far.
I have no idea why OP states it adds a Secure Table parameter; I have not seen such being added.
Note that these are my observations and could be wrong.
Click to expand...
Click to collapse
It's a free app. It's conveinient for those who don't want to remember the parameter or how to use SetEdit. Also nice to just be able to toggle on/off. It has worked for me on every Lineage-based ROM I've tried it.
Good to know that it doesn't work on MIUI ROMs however, and that there's a permanent method that doesn't require installation of an app!

Categories

Resources