08:34:10 <bero> #startmeeting
08:34:10 <linarobot> Meeting started Tue Nov 10 08:34:10 2015 UTC.  The chair is bero. Information about MeetBot at http://wiki.debian.org/MeetBot.
08:34:10 <linarobot> Useful Commands: #action #agreed #help #info #idea #link #topic.
08:34:11 <xruxa> bero, sunao, Qian_, Qian__ , qian , luther, xavierhsu, yspan, liuyq, zhizhoutian_ seem to be around
08:34:13 <yspan> hi
08:34:20 <Qian_> hi
08:34:25 <sunao> hi
08:34:57 <liuyq> hi
08:34:58 * luther is here
08:35:43 <xavierhsu> Xavier is here
08:35:50 * xruxa is here to see what people work on and that we have tasks for all in JIRA as well (inc newcomers)
08:36:34 <linarobot> bero: Error: Can't start another meeting, one is in progress.
08:36:40 <bero> hi all
08:36:52 <bero> let's go over the tasks quickly...
08:36:59 <bero> liuyq: do you want to go first?
08:37:17 <liuyq> What did you do?
08:37:17 <liuyq> Checked the difference between arm mode and thumb mode. It�s about 1.5MB less in the total size of files in system partition on Nexus9, about 1.9MB less on Nexus9 platform
08:37:17 <liuyq> What are you going to do?
08:37:17 <liuyq> Running CTS and benchmark test to see if there is any regressions when change to thumb mode from arm mode.
08:37:17 <liuyq> Cherry-pick the libjpeg-turbo, zlib optimization patch for marshmallow builds from lollipop builds
08:37:19 <liuyq> Start to check third-party libraries for chromium_org project on lollipop build.
08:37:21 <liuyq> What problems do you have?
08:37:23 <liuyq> None
08:37:51 <xruxa> liuyq, I do not see a task in JIRA for this, is there?
08:38:16 <liuyq> bero, yspan, do you know if the optimization for zlib is in upstream?
08:38:17 <xruxa> liuyq, I found it, it was still a TODO
08:38:36 <liuyq> xruxa, which task?
08:38:43 <xruxa> li LMG-923
08:38:46 <xruxa> liuyq, ^^^
08:38:53 <yspan> liuyq, you mean neon opt.?
08:39:07 <xruxa> liuyq, thanks.
08:39:09 <bero> liuyq: It isn't - AOSP guys told us to go to upstream zlib first and upstream zlib wasn't overly interested because it didn't help on x86
08:40:16 <bero> yspan: do you want to go next?
08:40:21 <yspan> ok
08:40:33 <yspan> What did you do?
08:40:33 <yspan> Separated 3 more files out. Amount of memory saving increased from 4K to 24K (11%). Booting to Android homescreen OK! But pngtest showed an error though the output image was correct.
08:40:33 <yspan> What are you going to do?
08:40:33 <yspan> Debug.
08:40:33 <yspan> What problems do you have?
08:40:37 <yspan> none
08:41:08 <liuyq> xruxa, I thought when I updated the comment, it will be In progress automatically:)
08:41:19 <xruxa> liuyq, no problem.
08:42:08 <xruxa> liuyq, for some funny reasons your comments did not show for me. Now they are there. Sigh. Twice.
08:43:18 <xruxa> yspan, thanks.
08:43:43 <xruxa> yspan, you did not have time to start looking at the ART parameters yet, right? Just checking where we are.
08:44:13 <yspan> not yet. I will start it after libpng task is done
08:44:22 <xruxa> yspan, ok, thanks.
08:44:29 <bero> Qian_: next?
08:44:52 <Qian_> What did you do?
08:44:53 <Qian_> I was blocked when cross-compile perl,  there are too many obstacles , so i will drop this way. maybe still will build some of others by cross-compile.
08:44:53 <Qian_> I have set up a native building environment on Nexus5, and it can install perl and build perl successfully. But when using perl built by myself, seems some errors.
08:44:54 <bero> we might pass ART parameters to a new starter btw
08:44:54 <Qian_> met some errors when build SPEC tools, it show can’t find <errno,h>, but i can find it at
08:44:56 <Qian_> /data/data/com.pdaxrom.cctools/root/cctools/arm-linux-androideabi/include
08:44:58 <Qian_> What are you going to do?
08:45:00 <Qian_> try to add my own include path on Nexus5.
08:45:02 <Qian_> try to build SPEC tools and SPEC test-cases.
08:45:04 <Qian_> What problems do you have?
08:45:06 <Qian_> How to add my own included path, i have tried CPATH, and C_INCLUDED_PATH,
08:45:08 <Qian_> it can’t work.  add “-I” instead ?
08:45:38 <xruxa> Qian_, so are you blocked or do you still have ideas to try out?
08:45:55 <bero> Qian_: probably "-isystem /data/data/com.pdaxrom.cctools/root/cctools/arm-linux-androideabi/include" is the best thing to add to the compiler flags
08:45:55 <Qian_> maybe block now
08:46:45 <Qian_> bero, But i will change the Makefile, There are many projects.
08:47:48 <Qian_> since it can work on ubuntu-arm, we have the chance let it work on Android
08:48:12 <bero> It might make sense to just have a warpper script... e.g.
08:48:18 <bero> cat >goodgcc <<EOF
08:48:20 <bero> #!/bin/sh
08:48:31 <Qian_> i have done that
08:48:33 <bero> exec gcc -isystem /data/data/com.pdaxrom.cctools/root/cctools/arm-linux-androideabi/include "$@"
08:48:34 <bero> EOF
08:49:24 <Qian_> ok
08:50:00 <bero> sunao: next?
08:50:07 <sunao> What did you do?
08:50:09 <sunao> 1. investigate the cache of rendered object.
08:50:10 <sunao> 2. got a hikey hours ago, read the document.
08:50:11 <Qian_> there are still errors when make the whole projects, i will check it when i fix gcc
08:50:13 <sunao> what are you going to do?
08:50:13 <sunao> 1. try to bring the hikey up, and will test the memory allocator on the board.
08:50:15 <sunao> what problems do you have?
08:50:16 <sunao> 1.  None.
08:50:47 <xruxa> sunao, thanks.
08:51:16 <bero> xavierhsu: next?
08:51:29 <xavierhsu> What did you do?I install different android apps in hikey for testing libjpeg-enc.so.
08:51:43 <xavierhsu> What are you going to do?Testing the libjpeg-enc.so.
08:52:02 <xavierhsu> What problems do you have? When I want to use the android app, the screen is continually flicker.        In addition to the hikey, could I use another platform for testing libjpeg-enc.so?
08:52:47 <bero> xavierhsu: Is the flickering related to the jpeg changes or is anything else wrong with the setup?
08:53:56 <luther> xavierhsu, maybe some one can share you  a workable android images to verify your local hardware.
08:54:01 <xavierhsu> bero. originally the hikey it will flicker.
08:55:42 <xavierhsu> When I use the app, it will continually flicker. So I can not control the app.
08:55:54 <xavierhsu> I check the logcat
08:56:10 <xavierhsu> didn,t see any error message
08:57:10 <Qian_> bero, it can't work
08:57:14 <Qian_> $gcc -isystem /data/data/com.pdaxrom.cctools/root/cctools/arm-linux-androideab>
08:57:15 <Qian_> gcc: fatal error: no input files
08:57:15 <Qian_> compilation terminated.
08:57:49 <bero> Qian_: Looks like the wrapper script is missing the "$@" for some reason...
08:58:17 <bero> xavierhsu: probably GPU driver issue... is this the official build?
08:58:27 <Qian_> maybe, because the root dir is /data/data/com.pdaxrom.cctools/root/cctools
08:58:37 <xruxa> bero, can xavierhsu use model to test that libjpeg-turbo as well? Slow but otherwise should work, no?
08:58:44 <bero> yes
08:59:32 <xavierhsu> bero, I clone the source code and build in my local side.
08:59:37 <xruxa> xavierhsu, if the flicker is making the screen unusable, try to setup a model (we have M based images for those) and run it there
09:00:22 <bero> xavierhsu: did you pull in the GPU driver? I don't think that's included in the builds by default because we don't have the source...
09:01:02 <xavierhsu> xruxa, bero, let me check@@
09:02:12 <yuxing> bero, my plan as following:
09:02:41 <yuxing> What did you do?
09:02:41 <yuxing> 1. Investigating how to enable zramfs on sprd tshark mobile  2. Investigating the parameters which affect zramfs,such as Swappiness、/proc/sys/vm/page-cluster     3. Reading the zramfs source code to understand the processing logic of zramfs kernel space
09:03:08 <yuxing> What are you going to do?
09:03:18 <yuxing> 1. Finish enable the zramfs on tshark mobile
09:03:28 <yuxing> 2. Continuing read the zramfs source code
09:03:37 <yuxing> What problems do you have?
09:03:55 <yuxing> 1. I don't know how to test the zramfs on mobile, in other words, how to make system to produce  swap and swaping data to zram disk.
09:04:02 <yuxing> 2. Is there some standard test methods for zram ?
09:04:18 <bero> yuxing: thanks, and welcome btw!
09:04:28 <bero> I don't think there's standard tests for it
09:05:12 <yspan> yuxing, months ago, I tested it by startup APP-a, close APP-a, startup APP-b, close APP-b, and so on.
09:05:52 <yuxing> bero & yspan : thanks
09:06:00 <luther> yuxing, i think you can start many apps, do not close them, then swap will be used
09:06:17 <Qian_> bero, it can't work
09:06:23 <yspan> try to utilize memory as much as you can to see if linux swap some pages out
09:06:30 <bero> you have to enable it with swapon unless the init scripts are hacked to do it automatically
09:06:34 <bero> Qian_: what's the problem?
09:07:09 <yuxing> bero: I had enable the swapon
09:08:46 <xruxa> liuyq, bero ( and bhoj ) did we already update to android-6.0.0_r26 ?
09:09:20 <xruxa> luther, would you go next please?
09:09:21 <bhoj> xruxa, yes.
09:09:28 <xruxa> bhoj, thanks!
09:09:34 <Qian_> $cat >goodgcc <<EOF
09:09:34 <Qian_> > #!/bin/sh
09:09:34 <Qian_> >exec gcc -isystem /data/data/com.pdaxrom.cctools/root/cctools/arm-linux-androideabi/include "$@"
09:09:36 <Qian_> > EOF
09:09:42 * luther What did you do?
09:09:43 <luther> 1. mutex.cc map design and all methods should be no longer more simpler,
09:09:43 <luther> no common optimization space
09:09:43 <luther> 2. if we use clang compiler to compile android,
09:09:43 <luther> we will get more bigger code and more checking code
09:09:43 <luther> (it should cut down code running efficiency than other toolchain)
09:09:45 <luther> i don't know why clang compiler needs to do these lock checking forcedly?
09:09:49 <luther> we can see it under here, at least when one class is constructed,
09:09:51 <luther> __attribute__(locks_excluded(Locks::thread_suspend_count_lock_))
09:09:55 <luther> __attribute__(shared_lock(Locks::mutator_lock_))
09:09:55 <Qian_> still can't work
09:09:57 <luther> method will be called
09:09:59 <luther> / Annotalysis thread-safety analysis support.
09:10:01 <luther> #if defined(__SUPPORT_TS_ANNOTATION__) || defined(__clang__)
09:10:03 <luther> #define THREAD_ANNOTATION_ATTRIBUTE__(x)   __attribute__((x))
09:10:05 <luther> #else
09:10:07 <luther> #define THREAD_ANNOTATION_ATTRIBUTE__(x)   // no-op
09:10:11 <luther> #endif
09:10:13 <luther> #define LOCKS_EXCLUDED(...) THREAD_ANNOTATION_ATTRIBUTE__(locks_excluded(__VA_ARGS__))
09:10:15 <luther> #define SHARED_LOCK_FUNCTION(...) THREAD_ANNOTATION_ATTRIBUTE__(shared_lock(__VA_ARGS__))
09:10:19 <luther> class ScopedFastNativeObjectAccess : public ScopedObjectAccessAlreadyRunnable {
09:10:21 <luther> public:
09:10:25 <luther> explicit ScopedFastNativeObjectAccess(JNIEnv* env)
09:10:27 <luther> LOCKS_EXCLUDED(Locks::thread_suspend_count_lock_)
09:10:29 <luther> SHARED_LOCK_FUNCTION(Locks::mutator_lock_) ALWAYS_INLINE
09:10:31 <luther> : ScopedObjectAccessAlreadyRunnable(env) {
09:10:33 <luther> Locks::mutator_lock_->AssertSharedHeld(Self());
09:10:35 <luther> DCHECK((*Self()->GetManagedStack()->GetTopQuickFrame())->IsFastNative());
09:10:37 <luther> // Don't work with raw objects in non-runnable states.
09:10:41 <luther> DCHECK_EQ(Self()->GetState(), kRunnable);
09:10:43 <luther> }
09:10:45 <luther> ~ScopedFastNativeObjectAccess() UNLOCK_FUNCTION(Locks::mutator_lock_) ALWAYS_INLINE {
09:10:49 <luther> }
09:10:51 <luther> private:
09:10:55 <luther> DISALLOW_COPY_AND_ASSIGN(ScopedFastNativeObjectAccess);
09:10:57 <luther> };
09:10:59 * luther What are you going to do?
09:11:01 <luther> 1. look art/runtime/native/sun_misc_Unsafe.cc
09:11:03 * luther What problems do you have?
09:11:05 <luther> 1. none till now
09:11:14 <bero> xruxa: Yes, everything is rebased to android-6.0.0_r26
09:11:37 <bero> Qian_: Oh, I see the problem now... First line, try cat >goodgcc <<'EOF'
09:12:10 <xruxa> luther, that above - are you converting some JAVA implemntation to C/C++ already?
09:12:16 <luther> bero, xchat can send file directly
09:12:42 <luther> xruxa, not yet
09:13:09 <xruxa> ok, thanks luther
09:13:17 <xruxa> zhizhoutian_, would you go next please?
09:13:30 <zhizhoutian_> What did you do?
09:13:31 <zhizhoutian_> LMG-930	Investigate Juno toolchain issues with C-Reduce tools
09:13:31 <zhizhoutian_> Resolved Gcc install issue, LLVM install issue and C-Reduce install issue
09:13:31 <zhizhoutian_> see this with detail : https://projects.linaro.org/browse/LMG-930
09:13:31 <zhizhoutian_> Some tips for Tinno guys to kick off their low memory work
09:13:31 <zhizhoutian_> how to login/Gerrit/IRC/mail and so on
09:13:31 <zhizhoutian_> What are you going to do?
09:13:32 <zhizhoutian_> Ready everything before bero come to China
09:13:32 <zhizhoutian_> What problems do you have?
09:13:33 <zhizhoutian_> None
09:13:53 <zhizhoutian_> What did you do?
09:13:53 <zhizhoutian_> 1.LMG-930	Investigate Juno toolchain issues with C-Reduce tools
09:13:53 <zhizhoutian_> Resolved Gcc install issue, LLVM install issue and C-Reduce install issue
09:13:53 <zhizhoutian_> see this with detail : https://projects.linaro.org/browse/LMG-930
09:13:53 <zhizhoutian_> 2.Some tips for Tinno guys to kick off their low memory work
09:13:54 <zhizhoutian_> how to login/Gerrit/IRC/mail and so on
09:13:54 <zhizhoutian_> What are you going to do?
09:13:55 <zhizhoutian_> Ready everything before bero come to China
09:13:55 <zhizhoutian_> What problems do you have?
09:13:56 <zhizhoutian_> None
09:14:29 <xruxa> zhizhoutian_, do you have the status of all AOSP master builds for me as well?
09:14:46 <xruxa> zhizhoutian_, where are we with the failing VFAT tests?
09:14:53 <zhizhoutian_> xruxa: this one
09:15:00 <zhizhoutian_> xruxa: i report it last week
09:15:08 <zhizhoutian_> https://projects.linaro.org/browse/LMG-896
09:15:28 <zhizhoutian_> this is investigate with  failing VFAT task
09:15:36 <zhizhoutian_> investigation.
09:15:59 <zhizhoutian_> I have sent you an email with AOSP master builds task
09:16:01 <xruxa> zhizhoutian_, the last comment is oct 30th. Did we get stuck or did we solve those VFAT problems?
09:17:11 <zhizhoutian_> xruxa: Indeed i can find where is the problem, but i did not research why.
09:17:41 <xruxa> zhizhoutian_, ok, please 1) wrap that VFAT task and 2) come with AOSP maste build status tomorrow.
09:18:00 <zhizhoutian_> xruxa: ok
09:18:13 <xruxa> bero, I guess your turn (and did we have few more engineers? Jixin or Ming)?
09:18:54 <zhizhoutian_> xruxa: I have sent you an email with AOSP master build, can you read it while you have time?
09:19:33 <xruxa> zhizhoutian_, I See it now, thanks
09:19:36 <xruxa> bero, ?
09:20:22 <zhizhoutian_> xruxa: :)
09:20:33 <bero> What did you do?
09:20:33 <bero> Made ALOGI and ALOGD less verbose in NDEBUG builds, saving a few 100 kB
09:20:34 <bero> Integrated various previous patches into M-LCR build
09:20:34 <bero> Started porting the -fstrict-aliasing patchset to M
09:20:34 <bero> LMG-SC meeting
09:20:34 <bero> What are you going to do?
09:20:34 <bero> Finish porting the -fstrict-aliasing patchset
09:20:35 <bero> Take a closer look at list of Java things that might benefit from rewriting in C/C++
09:20:35 <bero> If there’s enough remaining time, start debugging LTO crashes
09:20:36 <bero> What problems do you have?
09:20:36 <bero> Still need the 48h day
09:21:13 <xruxa> bero,  :)
09:21:47 <xruxa> bero, did we have few more engineers? I have emails about Ming working on some kernel issues, and Ming starting as well. ???
09:22:26 <bero> xruxa: yes, the new Tinno and Spreadtrum assignees are starting to show up
09:22:56 <xruxa> bero, I do not know their IRC nicks - are they here?
09:23:09 <zhizhoutian_> xruxa: yes, they are around
09:23:26 <zhizhoutian_> xruxa: do you want them to take part in this meeting?
09:23:49 <zhizhoutian_> xruxa: most of them are confused with their task...
09:23:55 <xruxa> zhizhoutian_, bero - if they work on optimizations then yes :)
09:24:10 <bero> zhizhoutian_: yes, that would definitely be good. I've sent out the invitations a couple of days ago, but so far didn't get a lot of feedback
09:24:11 <zhizhoutian_> xruxa: yes, they are on this thing.
09:24:33 <bero> zhizhoutian_: are they reading their email on their @linaro.org addresses, or is something not yet set up there?
09:24:53 <zhizhoutian_> bero: yes, i have touch them how to.
09:26:21 <xruxa> bero, lets wrap up the meeting and lets invite those guys for tomorow.
09:26:34 <luther> if they are not ready for today's meeting, maybe tomorrow is better for them
09:26:35 <bero> zhizhoutian_: It would be good if I got replies about their skills etc. - I assigned tasks more or less at random because I have no idea who knows anything about what.
09:26:37 <xruxa> zhizhoutian_, make sure they ask questions if they are confused abut their tasks please
09:26:44 <bero> Probably that's why people got a little confused
09:27:11 <xruxa> bero, zhizhoutian_ - send me the names of engineers who need invitation, I will update the meeting.
09:27:11 <zhizhoutian_> bero: Maybe i can send you their resumes
09:27:43 <zhizhoutian_> xruxa: ok, i will do it.
09:28:00 <xruxa> zhizhoutian_, I see lots of new names on the invitation, so perhaps bero or Tom updated it already, but send those names anyway please
09:28:10 <zhizhoutian_> xruxa, bero I will give you their names and resume.
09:28:41 <bero> zhizhoutian_: thanks, the resumes will be really useful
09:28:47 <bero> xruxa: I did update the invitation
09:28:58 <bero> xruxa: but I only have a list of names so far
09:29:05 <bero> xruxa: so who can do what is random guesswork ;)
09:29:11 <zhizhoutian_> bero: : where is the invitation
09:29:34 <luther> zhizhoutian_, maybe you can help us to tell other new guys to join this everyday's IRC meeting
09:29:37 <zhizhoutian_> bero: guesswork by name :) amazing.
09:30:05 <zhizhoutian_> luther: ok, i will do it after this meeting. they are not far from me.
09:30:58 <bero> zhizhoutian_:  https://calendar.google.com/calendar/render?hl=en-GB&pli=1#eventpage_6|eid-amoxa2J0a2d1bXVpcXF1OTI0ZW5rM3JhMXNfMjAxNTExMTFUMDgzMDAwWiBiZXJuaGFyZC5yb3NlbmtyYW56ZXJAbGluYXJvLm9yZw-0-0- (anyone in the guest list automatically gets the invitation)
09:31:13 <zhizhoutian_> bero: thanks
09:32:35 <bero> xruxa: did you have anything else?
09:33:01 <xruxa> bero, nope
09:33:22 <bero> One more important thing for everyone: It's official now, the memory optimization work is moving to M, so we can drop any L focus
09:33:34 <bero> I think we're done for today then... Have a great day everyone
09:33:36 <bero> #endmeeting