From 8da3302792b33dc23c21aab71daf57c5aab6c3a6 Mon Sep 17 00:00:00 2001 From: z30031875 Date: Tue, 10 Jun 2025 16:11:41 +0800 Subject: [PATCH] fix-jit Signed-off-by: z30031875 --- BUILD.gn | 8 - app_jit_enable_list.conf | 300 --------------------------------- interface/kits/jsvm_types.h | 2 +- src/platform/platform_ohos.cpp | 33 +--- 4 files changed, 4 insertions(+), 339 deletions(-) delete mode 100644 app_jit_enable_list.conf diff --git a/BUILD.gn b/BUILD.gn index bd425f7..7b3254a 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -15,13 +15,6 @@ import("//build/config/clang/clang.gni") import("//build/ohos.gni") import("jsvm.gni") -ohos_prebuilt_etc("app_jit_enable_list") { - relative_install_dir = "jsvm" - source = "./app_jit_enable_list.conf" - part_name = "jsvm" - subsystem_name = "arkcompiler" -} - action("copy_v8") { external_deps = [] deps = [] @@ -97,7 +90,6 @@ config("public_jsvm_config") { ohos_prebuilt_shared_library("libjsvm") { deps = [ - ":app_jit_enable_list", ":build_libjsvm", ] diff --git a/app_jit_enable_list.conf b/app_jit_enable_list.conf deleted file mode 100644 index 4e0fbf1..0000000 --- a/app_jit_enable_list.conf +++ /dev/null @@ -1,300 +0,0 @@ -com.acts.ace.napitest -com.dingtalk.hmos -com.jd.hm.mall -com.sankuai.hmeituan -com.sankuai.dianping -com.vip.hosapp -com.suanya.harmonynext -com.meituan.takeaway -com.tencent.videohm -com.jd.jrapp.hongmeng -com.ctrip.harmonynext -com.cainiao.cainiao4hmos -com.tencent.hm.news -com.fliggy.hmos -yylx.danmaku.bili -com.cmcc.cmvideohm -com.taobao.taobao4hmos -com.klfe.hos.kmall -net.vipmro.activity.hos -com.sihai.jiujiuxiaogouhm.huawei -io.dcloud.hellouniapp.h -com.zengame.ttaxq.hm -com.maoyan.hmovie -com.kuaishou.hmapp -com.xingpianhao.miluhms -com.aibotshengma.harm -com.hm.manyi.tms.driver -com.mihuan.mgsshos.huawei -com.roborock.smart.hm -com.ahsq.dldl.sysqharmony -com.mvtrail.notepad.zjhw -com.party.zhdj.hm -com.Csai.CsaiApp -com.loafish.znyerp -cn.samsclub.hm.app -com.dewu.hos -com.jianli.zhizuobaoshms -com.bjy.app -com.meituan.hiyouxuan -com.bendibao.app -com.shangxueba.open.sxbhm -com.sc.meihao -com.whaty.HMRXZX -com.meituan.hmaicai -com.aichatsm.harm -cn.yorry.sudoku -com.dsy.ymygz -meet.popsoft.tech -com.tencent.hmportfolio -com.cgs.gov.geoapp -com.sjfc.whfyt.harm -hmos.com.qxnga.qjt -com.fulfut.read.har -com.mvtrail.tibetantranslator.zjhw -com.xunji.hm -com.huayimt.hm -cn.kunming.railway.krplus.hm -com.atemai.haros.app -com.hopewind.hopecloud -com.huzhan.app -com.pengku.anmo -com.kuaishou.hmnebula -com.tencent.mtthm -cn.alphabets.shoteyes -com.nbgame.nbdz.huawei -com.ceekee.steward.hmos -com.inn.yzg -com.shangxueba.sxbhm -com.hm.manyi.tms.owner -com.xiwei.shipper.hm -com.myliyang.city -com.hltmsp.s -com.cyyun.voicesystem.auto.hm -koutu.xaikoukou.ypthotosxiuxiu -io.whim.czyjharmony -com.suanya.travel.harmonynext -com.xiwei.driver.hm -com.gbyc.coffeeApp -com.fanyou.danmu -com.diankamu.logo -com.ujigu.three.danzhaotkhm -com.fanyou.gamme3 -com.htzhjy.hm.ht -com.dada.shop.hm -com.shengmaai.harm -smart.reading.gz -com.fanyou.jizan -com.fanyou.dice -com.fanyou.tide -com.ht.ewy -com.ahsq.ydcs.sysqharmony -com.miracle.qdqyhm -com.htzhjy.hm.tuan -com.yunbiji.cloudnoteshms -com.aianji.hap -com.yddj.dousc.hos -com.hnmzf.gblnnjzp.huawei -com.social.security.lhasa.hm -huawei.hkwjhealth.hzfxyj -com.sunntone.es.student.hm -com.qft.quanfangtong -com.vip.unionhuarmony -com.fanyou.gamme4 -com.fanyou.gamme5 -com.wl.zdgcszq.app.huawei -com.missevan.app -com.qingtangapp.huawei -huawei.maobaoyun.app -com.qw.hm.jiakao -com.zzwtec.smarthouse -cn.org.nmgqnzyz.zybj -com.fanyou.pdf -com.xsca.zbyzt -com.loafish.ckgl -com.tencent.qqgame.xq.hw -fzzhm.sdqzu.com -com.xs.ohsmartlink -io.dcloud.dev.app.h -com.ld.cww1 -com.dzxx.sdgzw -com.shmrt.xyhguard.hmos -hm.okcis.zbcgdhw -unihm.jxzhjg.gov -com.lzwl.hmr.kxk -com.shizhi.shihuoapp -com.huawei.jmggfw -com.ttbyou.huawei -com.zm.cloud.hm -com.aifxc.izhangkong3.app -hw.dcloud.H5342BD81 -com.gtkj.yunshouhou -io.dcloud.unicloud.h -com.whmanyan.pswatermark -com.jinian.jiluhms -com.skcjs.wqwhm -com.fanyou.qrcode -net.csdn.csdnplusoh -com.manhua.zhaopianshms -com.aiface.kongdi -com.whmanyan.photoeditor -com.whmanyan.postermaster -com.hm.xxshly.huawei -com.moyun.yourlist_hm -com.fcbox.hm.hiveconsumer -com.akai.handSignTreasureOH -com.AECCHarbinDongAnHM.digitalDA -com.uafoo.jxcdisturb -com.yunmiao.yangmiaohms -com.lenchy.gzapp.hm -com.crm.harmonyapp -com.user.arula.huawei -com.hntxrj.spterp -com.xlhb.cloud.app.ho -com.ucrownbuy.huawei -ckey.token1.dc -com.sungu.mybts -com.mbticeshi.zhiyeceshihms -tothink.scitico.huawei -com.wsy.wansuiye.hmnext -com.khnt.dtwbmanager -com.zhuineng.hms -com.mayishebao.huawei -net.nanhuaohos.app -com.zhihu.hmos -com.yimingkeji.app -com.apoicmercial.lncalulatox -com.fangtetravel.HappyTravelFangTe -com.shuzibeidahuang.app -qixuexing.learn.huawei -com.huania.harmonyearthquake -com.chinamobile.cmcc -com.jiton.smarttoiletosnext -hm.yuanhuo.cn -com.wl.zddl.app.huawei -com.cmcc.DigitalHome -com.diamondcat.ttigd2.hms.huawei -com.piaoyou.piaoxingqiu.hm -com.uc.mobile -com.huawei.hmos.health -com.juqitech.niumowang.hm -com.miteng.lighthouse.family -com.htwoplayers.srjjc.harm -com.cgssafety.ohapp -com.danchunchaye.tea.hmos -com.nemojoy.whatgame -com.kdwl.dazhong.hm -com.hjsj.hjsjposorder -com.ynrkyy.app -com.quark.ohosbrowser -diandian.com.huawei -com.wedobest.xiangqi.harm -com.ly.jlcq.huawei -net.gibbous.honmeng -hanning.huawei.com -com.hmg316522678.jnh -com.MiMouse.mimouseAIClient -com.yzzn.harmonyAppDev -cn.linkedcare.eky.os -uni.UNIB03D90E.hmos -com.ening.post.huawei -com.kq.kq520.com -com.jmlide.ywshop1 -com.huakai.calendar.hm -com.chuazhuang.mxhzs.harm -com.dsbos.OSdrhntb -com.ouyeel.mobile -com.gtkj.yunweibao -com.digitalsee.otpclient -com.wlq.tbxharmony -com.xiaomaicard.apphm -com.beatpte.alpacapte -com.miracle.weqipack -com.funi.hsportalhongmong -com.shanjing.huigou -com.anshifu.user -com.caigee.credit -com.yanfeng.moyhm -com.nbgame.nbmjharmony.huawei -com.iyuba.newconceptenglish -com.touchsee.huawei -com.ensoft.finance_huawei -com.ximalaya.ting.xmharmony -com.amh.ssshipper.hm -cn.campsg.obe -com.qinglanjiayuan.parent.huawei -com.trademarkbuy.huawei -cn.tmbuy.huawei -com.qiaoan.qiaoanqiaobao_hm -com.isyn.hw -cn.yorry.nonogram -com.babelstar.uniappV7 -com.wedobest.cyjl.harm -com.mishangwo.hm -com.zfucity.r6 -com.xiaomaicard.sybhm -com.meihua.harmonyblossomlock -com.moyin.peiwanpaidui.hmos -com.custle.hmyunyiqian -cn.tchunche.hunchehar -com.gongshuokeji.ychm -com.alipay.mobile.client -com.ycf.herosland.hmnext -com.hm.manyi.tms.station -com.hm.manyi.tms.transport -uni.UNID07E3E0.huawei -com.ruyigou.zsbgos -com.xingyueldh.phonedatabase -com.tuyoo.ninestudio.csapp.hm.huawei -com.tencent.mqq -com.moyeuser.hw -com.huifubao.fangchanclub -com.amh.cclconsignor.hm -com.youcash.ZYWalletHap -com.bgy.fhh -com.maimemo.huawei.momo -com.msht.minshengbao.hw -cn.com.xmrc.hm -com.uni.UNIBD487D4 -uzztong.huawei.com -com.ccying.SuperProperty.huawei -com.harmonys.yiyaoguan111 -com.zfucity.xiaoyi -com.fuweex.wteex -kangxi.aikangxi.com -com.baojia.heart2world.hm -com.ksly.gkzxrjhmos -com.app.feimayi.cn -com.miracle.chess -com.hdpp.kxt.hmos -com.weiq.influencer.hm -com.tencent.mapohos -com.everestec.zfwxhm -cn.ccgx.cgxcigapp.oa -com.digitalgd.creditchina -com.gongzhidao.inroadaihm -com.caigee.app -www.jiangrenbaike.com -com.wudaoweizhihw.app -com.onebuygz.hm -com.technician.kangyue -com.xiaomaicard.kcthm -com.v20262972.hw -com.longstron.huawei -com.tencent.tmgp.sgamece.hw -com.xiaomaicard.pdthm -com.box.qiannian -com.youxuedianzi.yatikuHarmonyApp -com.huawei.hmos.vmall -com.huawei.hmsapp.litegamelauncher -com.huawei.mosselhm -com.huawei.hmos.maps.app -com.huawei.hmos.meetimeservice -com.atomicservice.5765880207855215271 -com.atomicservice.5765880207855116497 -com.atomicservice.5765880207856089841 -com.atomicservice.6917561329515940402 -com.atomicservice.5765880207855911231 -com.atomicservice.5765880207855998315 -com.atomicservice.5765880207856073377 -com.atomicservice.5765880207856200997 diff --git a/interface/kits/jsvm_types.h b/interface/kits/jsvm_types.h index e93dce1..df5913b 100644 --- a/interface/kits/jsvm_types.h +++ b/interface/kits/jsvm_types.h @@ -328,7 +328,7 @@ typedef enum { */ JSVM_INVALID_TYPE, /** jit mode expected status. - * @since 15 + * @since 18 */ JSVM_JIT_MODE_EXPECTED, } JSVM_Status; diff --git a/src/platform/platform_ohos.cpp b/src/platform/platform_ohos.cpp index c92784f..c1a9357 100644 --- a/src/platform/platform_ohos.cpp +++ b/src/platform/platform_ohos.cpp @@ -141,34 +141,14 @@ static bool isJitMode = true; namespace ohos { #define JITFORT_QUERY_ENCAPS 'E' #define HM_PR_SET_JITFORT 0x6a6974 - -const std::string ENABLE_JIT_CONF_PATH = "/etc/jsvm/app_jit_enable_list.conf"; + bool ProcessBundleName(std::string& bundleName); -void ReadEnableList(const std::string& jitConfigPath, std::unordered_set& enableSet) -{ - std::ifstream file(jitConfigPath); - if (file.is_open()) { - std::string line; - while (std::getline(file, line)) { - if (!line.empty()) { - enableSet.insert(line); - } - } - file.close(); - } -} - bool InJitMode() { return isJitMode; } - -inline bool InAppEnableList(const std::string& bundleName, std::unordered_set& enableSet) -{ - return (enableSet.count(bundleName) != 0); -} - + inline bool HasJitfortACL() { return (prctl(HM_PR_SET_JITFORT, JITFORT_QUERY_ENCAPS, 0) == 0); @@ -223,14 +203,7 @@ inline bool ReadSystemXpmState() void SetSecurityMode() { constexpr size_t secArgCnt = 2; - std::string bundleName; - if (!ProcessBundleName(bundleName)) { - bundleName = "INVALID_BUNDLE_NAME"; - } - std::unordered_set enableList {}; - ReadEnableList(ENABLE_JIT_CONF_PATH, enableList); - - if (ReadSystemXpmState() || (!InAppEnableList(bundleName, enableList) && !HasJitfortACL())) { + if (ReadSystemXpmState() || !HasJitfortACL()) { isJitMode = false; int secArgc = secArgCnt; constexpr bool removeFlag = false; -- Gitee