{"id":115726,"date":"2024-05-13T13:52:06","date_gmt":"2024-05-13T11:52:06","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-6-9"},"modified":"2024-05-13T13:52:06","modified_gmt":"2024-05-13T11:52:06","slug":"reliz-yadra-linux-6-9","status":"publish","type":"post","link":"https:\/\/prohoster.info\/lv\/blog\/news\/reliz-yadra-linux-6-9","title":{"rendered":"Linux kodola 6.9 izlai\u0161ana","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>P\u0113c divu m\u0113ne\u0161u izstr\u0101des Linus Torvalds prezent\u0113ja Linux 6.9 kodola izlai\u0161anu. Starp iev\u0113rojam\u0101kaj\u0101m izmai\u0146\u0101m ir dm-vdo modulis blokier\u012b\u010du dedupik\u0101cijai un kompresijai, tie\u0161\u0101s piek\u013cuves re\u017e\u012bms failiem FUSE, pidfd izveide atsevi\u0161\u0137iem pavedieniem, BPF tokenu meh\u0101nisms, Rust atbalsts ARM64 sist\u0113m\u0101s, Ext2 failu sist\u0113mas p\u0101reja uz novecoju\u0161\u0101m, vec\u0101 NTFS draivera iz\u0146em\u0161ana un Intel FRED meh\u0101nisma atbalsts.        <\/p>\n<p>Jaunaj\u0101 versij\u0101 ir veikti 15680 labojumi no 2106 izstr\u0101d\u0101t\u0101jiem, un piel\u0101gojuma lielums ir 54 MB (izmai\u0146as sk\u0101ru\u0161as 11825 failus, pievienotas 687954 koda rindas, izdz\u0113stas 225344 rindas). Iepriek\u0161\u0113j\u0101 laidien\u0101 bija 15641 labojums no 2018 izstr\u0101d\u0101t\u0101jiem, piel\u0101gojuma lielums bija 44 MB. Aptuveni 42% no vis\u0101m izmai\u0146\u0101m 6.9 saist\u012btas ar ier\u012b\u010du draiveriem, apm\u0113ram 17% izmai\u0146u attiecas uz aparat\u016bras arhitekt\u016br\u0101m specifiska koda atjaunin\u0101jumiem, 13% attiec\u012bb\u0101 uz t\u012bkla steku, 7% \u2014 uz failu sist\u0113m\u0101m un 4% \u2014 uz iek\u0161\u0113j\u0101m kodola apak\u0161sist\u0113m\u0101m.      <\/p>\n<p>Galven\u0101s jaun\u0101s funkcijas kodol\u0101 6.9:  <\/p>\n<ul>\n<li class=\"l\"> <b>Disku apak\u0161sist\u0113ma, I\/O un failu sist\u0113mas<\/b>\n<ul>\n<li class=\"l\"> Device Mapper (DM) ir pievienots jauns dm-vdo (virtual data optimizer) apstr\u0101d\u0101t\u0101js, kas \u013cauj, pamatojoties uz eso\u0161aj\u0101m blokier\u012bc\u0113m, izveidot virtu\u0101lu blokier\u012bci ar t\u0101d\u0101m funkcij\u0101m k\u0101 atk\u0101rtotu datu dedupik\u0101cija, datu kompresija, tuk\u0161o bloku izsl\u0113g\u0161ana un blokier\u012bces lieluma palielin\u0101\u0161ana p\u0113c nepiecie\u0161am\u012bbas (thin provisioning). Min\u0113t\u0101s iesp\u0113jas tiek \u012bstenotas blokier\u012bces l\u012bmen\u012b un neietekm\u0113 izmantot\u0101s failu sist\u0113mas (piem\u0113ram, izmantojot dm-vdo, var automatiz\u0113t atk\u0101rtotu datu apvieno\u0161anu un inform\u0101cijas uzglab\u0101\u0161anu kompres\u0113t\u0101 veid\u0101 jebkurai FS). Tiek atbalst\u012bta dm-vdo lieto\u0161ana fiziskajiem kr\u0101tuv\u0113m l\u012bdz 256TB un lo\u0123isko apjomu izveide l\u012bdz 4PB. VDO \u0161\u0137\u0113rsgriezuma p\u0101rvald\u012b\u0161anai ieteicams izmantot lvm. VDO tehnolo\u0123iju izstr\u0101d\u0101ja uz\u0146\u0113mums Permabit un t\u0101 tika atkl\u0101ta p\u0113c tam, kad to 2017. gad\u0101 p\u0101r\u0146\u0113ma Red Hat.\n<li class=\"l\"> FUSE apak\u0161sist\u0113m\u0101, kas tiek izmantota lietot\u0101ju telp\u0101 eso\u0161o failu sist\u0113mu \u012bsteno\u0161anai, ir pievienota s\u0101kotn\u0113j\u0101 re\u017e\u012bma realiz\u0101cija \u00abpassthrough\u00bb, kas \u013cauj tie\u0161i kodola l\u012bmen\u012b ieg\u016bt failu datus, ap\u0146emot procesu, kas darbojas lietot\u0101ja telp\u0101, t\u0101d\u0113j\u0101di da\u017eos gad\u012bjumos b\u016btiski palielinot veiktsp\u0113ju. Piem\u0113ram, FUSE failu sist\u0113mas realiz\u0101cijas, kas darbojas tikai las\u012b\u0161anas re\u017e\u012bm\u0101 un ierobe\u017eo piek\u013cuvi faili, var atdot failu saturu no avota failu sist\u0113mas, neno\u0146emot to procesam FUSE.\n<li class=\"l\"> Kategorij\u0101 par novecoju\u0161iem (deprecated) ir iek\u013cauts Ext2 failu sist\u0113mas \u012bstenojums. Par iemeslu min\u0113ta atbalsta snieg\u0161ana tikai 32-bit laika skait\u012bt\u0101jiem inode, kas p\u0101rsniegs 19. gada 2038. janv\u0101r\u012b. T\u0101 viet\u0101 iepriek\u0161\u0113j\u0101 ext2 draivera viet\u0101 ir ieteicams izmantot ext4 draiveri, kas atbalsta Ext2 failu sist\u0113mu un ir piln\u012bgi sader\u012bgs ar to, bet var izmantot ext2 sada\u013c\u0101s laika z\u012bmes, kas nav pak\u013cautas 2038. gada probl\u0113mai, ja FS izveidota ar inode, kuru lielums ir liel\u0101ks par 255 baitiem (ext2 draiver\u012b 32-bit laika skait\u012bt\u0101ji tika izmantoti neatkar\u012bgi no inode lieluma).\n<li class=\"l\"> Vecais NTFS failu sist\u0113mas draiveris ir no\u0146emts, t\u0101 viet\u0101, s\u0101kot ar 5.15 versiju, ir ieviests jauns NTFS3 draiveris. Divu NTFS \u012bstenojumu pieg\u0101de kodol\u0101 atz\u012bta par nevajadz\u012bgu, \u0146emot v\u0113r\u0101 to, ka vecais draiveris netika atjaunots daudzus gadus, atrodas slikst\u0101 st\u0101vokl\u012b un var darboties tikai las\u012b\u0161anas re\u017e\u012bm\u0101.\n<li class=\"l\"> Failu sist\u0113m\u0101s zonefs un hugetlbfs ir pievienota lietot\u0101ju identifikatoru mapp\u0113\u0161anas atbalsts mont\u0113t\u0101m failu sist\u0113m\u0101m, ko izmanto, lai sakautu noteikta lietot\u0101ja failus mont\u0113taj\u0101 sve\u0161a nodal\u012bjum\u0101 ar citu lietot\u0101ju pa\u0161reiz\u0113j\u0101 sist\u0113m\u0101.\n<li class=\"l\"> NFSv4 administratori tagad var atjaunot failu atv\u0113r\u0161anas un blo\u0137\u0113\u0161anas st\u0101vok\u013cus.\n<li class=\"l\"> Ext4 failu sist\u0113m\u0101 atz\u012bm\u0113ti tikai k\u013c\u016bdu labojumi un kunit testu atjaunin\u0101jumi.\n<li class=\"l\"> Btrfs turpin\u0101ta funkciju p\u0101rcel\u0161ana uz lapu folio izmanto\u0161anu (page folios).\n<li class=\"l\">  XFS failu sist\u0113m\u0101 turpin\u0101s darbs pie iesp\u0113jas izmantot util\u012btu fsck, lai p\u0101rbaud\u012btu un labotu atkl\u0101t\u0101s probl\u0113mas tie\u0161saistes re\u017e\u012bm\u0101, neatsl\u0113dzot failu sist\u0113mu.\n<li class=\"l\"> Sist\u0113mas izsaukuma pwritev2() funkcijai pievienots karogs RWF_NOAPPEND, kas \u013cauj nor\u0101d\u012bt rakst\u012b\u0161anas offset, pat ja fails tika atv\u0113rts pievieno\u0161anas re\u017e\u012bm\u0101.\n<li class=\"l\"> Ir pievienotas jaunas ioctl komandas: FS_IOC_GETUUID \u2014 atgrie\u017e nor\u0101d\u012bt\u0101s failu sist\u0113mas UUID identifikatoru, un FS_IOC_GETFSSYSFSPATH \u2014 nosaka nor\u0101d\u012bt\u0101s piesaist\u012bt\u0101s failu sist\u0113mas atra\u0161an\u0101s vietu \/sys\/fs.\n<li class=\"l\"> Failu sist\u0113mas efs, qnx4 un coda ir p\u0101rveidotas, lai izmantotu jauno sada\u013cu mont\u0113\u0161anas API.\n<li class=\"l\"> Uzlabota failu oper\u0101ciju izpilde, kas tiek veikta bez re\u0123istru atz\u012bm\u0113\u0161anas. Veiktsp\u0113ja ir uzlabota, veicot s\u0101kotn\u0113ju sal\u012bdzin\u0101jumu ar re\u0123istru, un p\u0113c tam p\u0101rejot uz mekl\u0113\u0161anu bez re\u0123istru. Atrisin\u0101tas probl\u0113mas, mont\u0113jot overlayfs virs direktorij\u0101m, kuru re\u0123istrs ir izsl\u0113gts.                  <\/ul>\n<li class=\"l\"> <b>Atmi\u0146a un sist\u0113mas pakalpojumi<\/b>\n<ul>\n<li class=\"l\"> Ieviesta Intel FRED (Flexible Return and Event Delivery) meh\u0101nisma atbalsts, kas izstr\u0101d\u0101ts, lai uzlabotu inform\u0101cijas par zemu l\u012bme\u0146u notikumiem pieg\u0101des efektivit\u0101ti un uzticam\u012bbu, sal\u012bdzinot ar pa\u0161reiz\u0113jo IDT (Interrupt Descriptor Table) meh\u0101nismu. Veiktsp\u0113jas uzlabo\u0161ana un aiztures samazin\u0101\u0161ana tiek nodro\u0161in\u0101ta, atgrie\u017eot notikumus ar procesora instrukciju IRET, nevis p\u0101rs\u016btot notikumus caur IDT tabulu. Uzticam\u012bbas palielin\u0101\u0161ana tiek pan\u0101kta, atsevi\u0161\u0137i apstr\u0101d\u0101jot notikuma iest\u0101\u0161anos kodola un lietot\u0101ja kontekst\u0101, pasarg\u0101jot no NMI iel\u0101des un saglab\u0101jot papla\u0161in\u0101taj\u0101 steka kadros visus saist\u012btos iz\u0146\u0113muma CPU re\u0123istrus.\n<li class=\"l\"> Pievienota iesp\u0113ja optimiz\u0113t datu piek\u013cuvi individu\u0101lajiem CPU kodoliem, izmantojot kodola kod\u0101 nosaukt\u0101s adres\u0101tu telpas (Named Address Spaces), kas realiz\u0113tas GCC k\u0101 GNU C papla\u0161in\u0101jums.\n<li class=\"l\"> Funkcijai pidfd_open() pievienots PIDFD_THREAD karogs, kas \u013cauj izveidot pidfd individu\u0101liem pavedieniem, nevis tikai izmantot pidfd grupas pavedienu kontekst\u0101. T\u0101pat pied\u0101v\u0101ta pseido-FS \u012bsteno\u0161ana, lai piek\u013c\u016btu pidfd caur virtu\u0101lo failu sist\u0113mu. At\u0161\u0137ir\u012bb\u0101 no procesu identifik\u0101cijas ar pid, pidfd identifikators ir saist\u012bts ar konkr\u0113tu procesu un nemain\u0101s, kam\u0113r PID p\u0113c pa\u0161reiz\u0113j\u0101 procesa pabeig\u0161anas var tikt piesaist\u012bts citam procesam.\n<li class=\"l\"> BPF apak\u0161sist\u0113m\u0101 pievienots BPF-tokenu meh\u0101nisms, kas \u013cauj selekt\u012bvi dele\u0123\u0113t programm\u0101m piek\u013cuves ties\u012bbas uz privil\u0113\u0123\u0113t\u0101m BPF oper\u0101cij\u0101m, piem\u0113ram, var sniegt neprivile\u0123\u0113tai lietojumprogrammai piek\u013cuvi atsevi\u0161\u0137\u0101m BPF apak\u0161sist\u0113m\u0101m bez piln\u0101m CAP_BPF ties\u012bb\u0101m.\n<li class=\"l\"> BPF apak\u0161sist\u0113m\u0101 ir pievienots jauns koplieto\u0161anas atmi\u0146as veids bpf_arena, kas defin\u0113 jomu, kuru var koplietot BPF programmas un lietot\u0101ju telp\u0101 eso\u0161as proced\u016bras. Ir pievienota instrukcija may_goto, kas \u013cauj organiz\u0113t ciklu darbu, kurus var p\u0101rtraukt verifikators. Ir pieejama iesp\u0113ja \u0123ener\u0113t no BPF programm\u0101m nejau\u0161us TCP SYN cookie un izveidot BPF apstr\u0101d\u0101t\u0101jus, lai c\u012bn\u012btos ar SYN pl\u016bdiem.\n<li class=\"l\"> Turpin\u0101s izmai\u0146u p\u0101rne\u0161ana no Rust-for-Linux zara, kas saist\u012bta ar Rust valodas izmanto\u0161anu k\u0101 otro valodu draiveru un kodola modu\u013cu izstr\u0101d\u0113 (Rust atbalsts nav akt\u012bvs p\u0113c noklus\u0113juma un nenoved pie Rust iek\u013cau\u0161anas oblig\u0101taj\u0101s atkar\u012bb\u0101s kodolam). Ir pievienots atbalsts Rust valodas izmanto\u0161anai 64 bitu ARM procesoros. Ir veikta p\u0101reja uz Rust 1.76 izlai\u0161anu. Ir pievienots makro \u00abcontainer_of!\u00bb. Viet\u0101 nestabilas funkcionalit\u0101tes \u00abptr_metadata\u00bb ir izmantota stabila metode \u00abbyte_sub\u00bb. Pievienots modulis \u00abtime\u00bb ar funkciju laika konvert\u0113\u0161anai \u00abmsecs_to_jiffies()\u00bb.\n<li class=\"l\"> Io_uring apak\u0161sist\u0113m\u0101 ir pievienota iesp\u0113ja failu sa\u012bsin\u0101\u0161anai (ftruncate_file).\n<li class=\"l\"> Ir pievienots jauns darba rindas veids WQ_BH (workqueue Bottom Halves) asynhronai koda izpildei programmat\u016bras p\u0101rtraukumu kontekst\u0101, kas paredz\u0113ts izmanto\u0161anai viet\u0101 novecoju\u0161iem tasklet.\n<li class=\"l\"> Tiem, kas str\u0101d\u0101 ar taimeri, ir b\u016btiski p\u0101rstr\u0101d\u0101ta lo\u0123ika akt\u012bvo CPU kodolu izv\u0113lei, lai netrauc\u0113tu neakt\u012bvos kodolus izsist no miega st\u0101vok\u013ca.\n<li class=\"l\"> Iesp\u0113jams atjaunin\u0101t ener\u0123ijas pat\u0113ri\u0146a modeli (EM, Energy Model) darba laik\u0101, piem\u0113ram, \u0146emot v\u0113r\u0101 darba temperat\u016bras ietekmi uz CPU energoefektivit\u0101ti. Funkcijas em_cpu_energy() veiktsp\u0113ja ir iev\u0113rojami uzlabota \u2014 testos uz stacion\u0101r\u0101s sist\u0113mas tagad t\u0101 tiek izpild\u012bta 1,43 reizes \u0101tr\u0101k, bet test\u0101 uz plates RockPi 4B \u2014 1,69 reizes \u0101tr\u0101k.\n<li class=\"l\"> Ir pievienots atbalsts ARM64 arhitekt\u016bras sist\u0113mu palai\u0161anai LPA2 re\u017e\u012bm\u0101 ar 52 bitu virtu\u0101l\u0101s adreses telpu.\n<li class=\"l\"> ARM64 sist\u0113m\u0101m ir \u012bstenots nep\u0101rtrauktu PTE (Page Table Entry) ierakstu atbalsts, \u013caujot palielin\u0101t veiktsp\u0113ju, uzlabojot TLB (Translation Lookaside Buffer) izmanto\u0161anas efektivit\u0101ti.\n<li class=\"l\"> Ir pie\u0146emti labojumi, lai uzlabotu atmi\u0146as p\u0101rvald\u012bbas apak\u0161sist\u0113mas veiktsp\u0113ju, samazinot konkur\u0113jo\u0161o blo\u0137\u0113jumu ra\u0161anos vmalloc().\n<li class=\"l\"> LoongArch arhitekt\u016br\u0101 ir ieviesta karsto labojumu meh\u0101nisms (live patching), kas \u013cauj veikt labojumus kodol\u0101 bez restart\u0113\u0161anas.\n<li class=\"l\"> RISC-V sist\u0113m\u0101m ir ieviesta sist\u0113mas izsaukuma membarrier() atbalsts, kas nodro\u0161ina atmi\u0146as barjeru iestat\u012b\u0161anu sist\u0113m\u0101 darbojo\u0161ajiem trauc\u0113jumiem.\n<li class=\"l\"> Ir paaugstin\u0101tas pras\u012bbas par LLVM\/Clang versiju, kuru var izmantot  kodola kompil\u0113\u0161anai. Tagad nepiecie\u0161ama vismaz LLVM 13.0.1 versija (iepriek\u0161 tika atbalst\u012bta kompil\u0101cija ar LLVM 11+).\n<li class=\"l\"> Lietot\u0101ja izseko\u0161anas notikumu meh\u0101nism\u0101, kas \u013cauj izveidot izseko\u0161anas notikumus no lietot\u0101ju procesiem, lai sekotu aktivit\u0101t\u0113m lietot\u0101ja telp\u0101, pievienota atbalsta izseko\u0161anas notikumu eksport\u0113\u0161anai da\u017e\u0101dos form\u0101tos (USER_EVENT_REG_MULTI_FORMAT).\n<li class=\"l\"> Funkciju izsaukumu izseko\u0161anas meh\u0101nism\u0101 ir pievienota iesp\u0113ja izsekot funkcijas ien\u0101ko\u0161o argumentu st\u0101vokli, kad tiek izsekots izeja no funkcijas. Tagad return operators atgriezt\u0101s v\u0113rt\u012bbas var sal\u012bdzin\u0101t ar izmantotajiem argumentiem funkcijas izsauk\u0161anai.\n<li class=\"l\"> R\u012bc\u012bb\u0101 perf pievienots atbalsts izvad\u0113 ar agreg\u0113\u0161anas re\u017e\u012bmu \u201ecluster\u201d (\u201eperf stat -a \u2014per-cluster\u201d) kop\u012bgo resursu statistikas apkopo\u0161anai. Iesp\u0113jams izmantot libcapstone bibliot\u0113ku procesu instrukciju disasemb\u0113\u0161anai (\u201eperf script -F disasm\u201d). Veiktas atmi\u0146as pat\u0113ri\u0146a optimiz\u0101cijas komandu perf report un perf annotate izpildes laik\u0101.                    <\/ul>\n<li class=\"l\"> <b>Virtualiz\u0101cija un dro\u0161\u012bba<\/b>\n<ul>\n<li class=\"l\"> Pievienota aizsardz\u012bba pret RFDS (Register File Data Sampling) ievainojam\u012bbu Intel Atom procesoros, kas \u013cauj izg\u016bt atliku\u0161os datus no re\u0123istra failiem (RF, Register File) procesor\u0101, kas tiek izmantoti, lai kop\u012bgi saglab\u0101tu re\u0123istru saturu vis\u0101s uzdevumos taj\u0101 pa\u0161\u0101 CPU kodol\u0101. Lai blo\u0137\u0113tu ievainojam\u012bbu, nepiecie\u0161ama mikrokoda atjaunin\u0101\u0161ana un instrukcijas VERW izmanto\u0161ana mikroarhitekt\u016bras buferu saturam izt\u012br\u012b\u0161anai, atgrie\u017eoties no kodola lietot\u0101ja telp\u0101. Lai aktiviz\u0113tu aizsardz\u012bbu palaid\u0113, var nor\u0101d\u012bt karodzi\u0146u \u201ereg_file_data_sampling=on\u201d. Inform\u0101ciju par ievainojam\u012bbas ietekmi un nepiecie\u0161am\u0101s aizsardz\u012bbas mikrokoda pieejam\u012bbu var nov\u0113rt\u0113t fail\u0101 \u201e\/sys\/devices\/system\/cpu\/vulnerabilities\/reg_file_data_sampling\u201d.\n<li class=\"l\"> Pievienots pamata atbalsts viesu sist\u0113mu aizsardz\u012bbai, izmantojot AMD SEV-SNP (Secure Nested Paging) papla\u0161in\u0101jumu, nodro\u0161inot dro\u0161u darbu ar iedobum\u0101 eso\u0161\u0101m atmi\u0146as lapu tabul\u0101m un aizsarg\u0101jot pret \u201eundeSErVed\u201d un \u201eSEVerity\u201d uzbrukumiem AMD EPYC procesoros, kas var apiet AMD SEV (Secure Encrypted Virtualization) aizsardz\u012bbas meh\u0101nismu. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/lv\/vps\/abuzoustojchivye-vps\/\"   title=\"KVM\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4384\">KVM<\/a> Nepiecie\u0161am\u0101s izmai\u0146as SNP izmanto\u0161an\u0101 pl\u0101nots pievienot versij\u0101 6.10.\n<li class=\"l\"> Modu\u013ci ar IMA (Integrity Measurement Architecture) un EVM (Extended Verification Module) tehnolo\u0123iju realiz\u0101ciju ir p\u0101rveidoti, lai izmantotu LSM (Linux Security Modules) ietvaru, kas bez funkcionalit\u0101tes zaud\u0113\u0161anas iev\u0113rojami vienk\u0101r\u0161o kodu, apvieno dubl\u0113jo\u0161os funkcionalit\u0101tes un \u013cauj izmantot pieejam\u0101s LSM standartiz\u0113t\u0101s iesp\u0113jas. IMA modulis paredz\u0113ts oper\u0113t\u0101jsist\u0113mas komponentu integrit\u0101tes p\u0101rbaudei, pamatojoties uz digit\u0101laj\u0101m parakstiem un hash v\u0113rt\u012bb\u0101m. EVM modulis aizsarg\u0101 papla\u0161in\u0101tos failu atrib\u016btus (xattrs) no uzbrukumiem, kas v\u0113rsti uz to integrit\u0101tes p\u0101rk\u0101p\u0161anu (EVM nepie\u013caus offline uzbrukumu, kur\u0101 uzbruc\u0113js var main\u012bt metadatus, piem\u0113ram, boot\u0113jot no savas ier\u012bces).\n<li class=\"l\"> Tika p\u0101rstr\u0101d\u0101tas sist\u0113mas izsaukumi lsm_list_modules(), lsm_get_self_attr() un lsm_set_self_attr(), lai nodro\u0161in\u0101tu lab\u0101ku sader\u012bbu ar 32 bitu vidi, kas paredz\u0113ti, lai izvad\u012btu iel\u0101d\u0113to LSM modu\u013cu (Linux Security Modules) sarakstu un ieg\u016btu\/nor\u0101d\u012btu LSM modu\u013ca atrib\u016btus. Izmai\u0146as trauc\u0113 atpaka\u013csader\u012bbu, bet, \u0146emot v\u0113r\u0101, ka jaunie sist\u0113mas izsaukumi tika pievienoti pag\u0101ju\u0161aj\u0101 kodola laidien\u0101 un pa\u0161laik netiek izmantoti lietojumprogramm\u0101s, Linuss Torvalds uzskat\u012bja, ka izmai\u0146as ir pie\u0146emamas.\n<li class=\"l\"> Veikta m\u0113\u0123in\u0101jums atjaunot UBSAN (Undefined Behavior Sanitizer) meh\u0101nisma izmanto\u0161anu. Probl\u0113mas b\u016bt\u012bba ir t\u0101da, ka kompilatori at\u0161\u0137ir\u012bgi apstr\u0101d\u0101 veselo skait\u013cu p\u0101rpild\u012bjumus parakst\u012btajos un parakst\u012btajos tipos. Parakst\u012bti p\u0101rpild\u012bjumi un nor\u0101d\u012bt\u0101ju p\u0101rpild\u012bjumi pieder pie neparedz\u0113tas uzved\u012bbas kategorijas, savuk\u0101rt nep\u0101ra p\u0101rpild\u012bjumi tiek nogrieztas modu\u013ca 2n ar saglab\u0101\u0161anu tikai zem\u0101kajiem rezult\u0101ta bitiem (\u201ewrap-around\u201d) un nepieder pie neparedz\u0113tas uzved\u012bbas. Lai nov\u0113rstu situ\u0101cijas ar neparedz\u0113tu uzved\u012bbu, kodols tiek kompakt\u0113ts ar opciju \u201e-fno-strict-overflow\u201d, kas noved pie \u201ewrap-around\u201d izmanto\u0161anas visiem veselo skait\u013cu p\u0101rpild\u012bjumiem. GCC un Clang nevar pareizi diagnostic\u0113t da\u017eas probl\u0113mas, izmantojot karogu \u201e-fno-strict-overflow\u201d, un UBSAN iek\u013cau\u0161ana ir v\u0113rsta uz kop\u012bgu sadarb\u012bbu ar kompilatoru izstr\u0101d\u0101t\u0101jiem, lai nov\u0113rstu izsist\u012bbas un konstat\u0113tu veselus skait\u013cu p\u0101rpild\u012bjumus viet\u0101s, kur tr\u016bkst skaidru p\u0101rbaud\u012bjumu.\n<p>Lai p\u0101rbaud\u012btu iesp\u0113jamos p\u0101rpild\u012bjumus kodol\u0101, tiek izmantotas konstrukcijas veida \u201evar + offset <var> PAGE_SHIFT) &lt; pgoff){..}&quot;), kas ir saist\u012btas ar kompil\u0101ciju ar karogu &quot;-fno-strict-overflow&quot; un neaptver visu kodu, kur potenci\u0101li var rasties p\u0101rpild\u012bjumi. Probl\u0113ma ir t\u0101da, ka, izmantojot UBSAN, l\u012bdz\u012bgas p\u0101rbaudes rad\u012bja lielu viltus br\u012bdin\u0101jumu pl\u016bsmu, un t\u0101p\u0113c 2021. gad\u0101 UBSAN n\u0101c\u0101s izsl\u0113gt. Atjaunotaj\u0101 izpild\u0113 ieteikts izmantot \u012bpa\u0161as anot\u0101cijas __signed_wrap un __unsigned_wrap, k\u0101 ar\u012b gatavus makros ar p\u0101rbaud\u0113m add_would_overflow(a, b) un add_wrap(a, b), kas \u013cauj no\u0161\u0137irt programm\u0113t\u0101ju paredz\u0113to veselo skait\u013cu p\u0101rpild\u012bjumu izmanto\u0161anu no p\u0113k\u0161\u0146u p\u0101rpild\u012bjumu ra\u0161an\u0101s, kas var izrais\u012bt ievainojam\u012bbas. Ierosin\u0101jums par pla\u0161\u0101ku kodola p\u0101rstr\u0101di, ievie\u0161ot papildu tipu defin\u012bcijas, tika noraid\u012bts Linusa Torvalda.                      <\/ul>\n<li class=\"l\"> <b>T\u012bkla subsist\u0113ma<\/b>\n<ul>\n<li class=\"l\">  T\u012bkla apak\u0161sist\u0113m\u0101 ir veikts darbs, lai samazin\u0101tu konkur\u0113jo\u0161o blo\u0137\u0113\u0161anu (\u201elock contention\u201d, m\u0113\u0123in\u0101jums ieg\u016bt blo\u0137\u0113\u0161anu, ko tur cits pavediens). Samazin\u0101ta RTNL blo\u0137\u0113\u0161anas izmanto\u0161ana.\n<li class=\"l\"> Tika pievienota iesp\u0113ja iesl\u0113gt akt\u012bv\u0101 socket polinga (busy polling) atbalstu konkr\u0113tu epoll izsaukumu kontekst\u0101. Pule un bud\u017eeta parametri var tikt iestat\u012bti atsevi\u0161\u0137i no noklus\u0113juma sist\u0113mas parametriem.\n<li class=\"l\"> Ieviesta strukt\u016bra net_hotdata, lai uzlabotu bie\u017ei izmantoto t\u012bkla konfigur\u0101cijas main\u012bgo ke\u0161atmi\u0146as efektivit\u0101ti.\n<li class=\"l\"> MPTCP ir pievienota atbalsts TCP_NOTSENT_LOWAT opcijai socketiem, kas \u013cauj ierobe\u017eot s\u016bt\u012b\u0161anas bufera izm\u0113ru. MCTP socketu API ir pievienots atbalsts t\u012bkla identifikatoriem (&#171;network ID&#187;), kas \u013cauj izmantot vair\u0101kas savstarp\u0113ji nesaskaro\u0161as MCTP t\u012bklus vien\u0101 host\u0101.\n<li class=\"l\"> IPSec ir pievienots atbalsts ICMP zi\u0146ojumu novirz\u012b\u0161anai ar k\u013c\u016bdu inform\u0101ciju (RFC 4301).\n<li class=\"l\"> Tiek pa\u0101trin\u0101ts mar\u0161rutu sken\u0113\u0161anas process, kad laiks ir beidzies.\n<li class=\"l\"> Tiek pa\u0101trin\u0101ta XDP darb\u012bba, pateicoties stingr\u0101kai pla\u0161u atmi\u0146as blok\u0101 izvair\u012b\u0161anai.\n<li class=\"l\"> Tika pievienota iesp\u0113ja pievienot metadatus netconsole zi\u0146ojumiem.\n<li class=\"l\"> Netfilter ir at\u013cauts noteikt lietot\u0101ja telpas tabulas, kas pievienojas fona p\u0101rvald\u012bbas procesam un netiek autom\u0101tiski no\u0146emtas p\u0113c lietot\u0101ja lietojumprogrammas pabeig\u0161anas.\n<li class=\"l\"> nftables ir pa\u0101trin\u0101ta elementu pievieno\u0161ana set-kop\u0101m ar apvienotiem diapazoniem.                      <\/ul>\n<li class=\"l\"> <b>Apr\u012bkojums<\/b>\n<ul>\n<li class=\"l\"> i915 draiver\u012b turpin\u0101ta darba uzs\u0101k\u0161ana Intel LunarLake (Xe 2) \u010dipu atbalsta ievie\u0161anai. Pievienoti jauni PCI identifikatori ier\u012bc\u0113m, kas balst\u0101s uz Intel Arrow Lake un Alder Lake N \u010dipiem. DisplayPort ir pievienots atbalsts tunel\u0113\u0161anai (DP tunneling) un caurlaides pie\u0161\u0137ir\u0161anai (bandwidth allocation). Vis\u0101m platform\u0101m ir iesl\u0113gta \u0101tr\u0101 palai\u0161ana. Pievienots atbalsts atk\u013c\u016bdo\u0161anas izvadei, kas saist\u012bta ar atsevi\u0161\u0137\u0101m ier\u012bc\u0113m.\n<li class=\"l\"> AMDGPU draiver\u012b ir veikta sagatavo\u0161ana atbalsta ievie\u0161anai AMD RDNA3.5 un RDNA4 GPU. Pievienots atbalsts ATHUB 4.1, LSDMA 7.0, JPEG DPG, IH 7.0, HDP 7.0, VCN 5.0, SMU 13.0.6, NBIO 7.11, SDMA 6.1, MMHUB 3.3, DCN 3.5.1, NBIF 6.3.1, VPE 6.1.1 un RAS ACA ietvara atbalstam. Kodu modul\u012b ir pievienots parametrs freesync_video, lai iesl\u0113gtu eksperiment\u0101lo atbalstu videore\u017e\u012bmu mai\u0146as optimiz\u0101cijai, izmantojot FreeSync adapt\u012bv\u0101s sinhroniz\u0101cijas tehnolo\u0123iju.\n<li class=\"l\"> Nouveau draiver\u012b ekr\u0101na p\u0101rvald\u012bbas kods ir p\u0101rg\u0101jis uz kmemdup() funkcijas izmanto\u0161anu.\n<li class=\"l\"> Turpin\u0101ta darba veik\u0161ana pie drm draivera (Direct Rendering Manager) Xe GPU, kas balst\u012bts uz Intel Xe arhitekt\u016bras, ko izmanto Intel Arc s\u0113rijas grafiskaj\u0101s kart\u0113s un integr\u0113taj\u0101 grafik\u0101, s\u0101kot ar Tiger Lake procesoriem.\n<li class=\"l\"> Pievienots DRM draiveris Mediatek MT8188 VDOSYS1 \u010dipiem.\n<li class=\"l\"> Saist\u012bt\u0101s ar videopod-system\u0101m kodola iestat\u012bjumi p\u0101rcelti uz CONFIG_VIDEO sada\u013cu.\n<li class=\"l\"> Pievienota ARM64 SoC atbalsts: Mediatek MT7981B (Filogic 820), MT7988A (Filogic 880), NXP i.MX8DXP, Renesas R8A779G2 (R-Car V4H ES2.0), R8A779H0 (R-Car V4M), TI J722S.\n<li class=\"l\"> Pievienots ARM platformu un ier\u012b\u010du atbalsts: Android telefoni, kas balst\u012bti uz Tegra30 \u010dipa, Chromebook mode\u013ci, kas balst\u012bti uz Mediatek MT8186, NAS, plan\u0161etdatori un sp\u0113\u013cu konsoles uz Rockchips RK35xx b\u0101zes, White Hawk plates uz Renesas SoC b\u0101zes, Qualcomm SM8550 (Snapdragon 8 Gen 2) b\u0101zes plates, Apalis nov\u0113rt\u0113juma plate, Sielaff i.MX6 Solo plate, Samsung Galaxy Tab 4 10.1 LTE.\n<li class=\"l\"> Veikta ALSA ska\u0146u sist\u0113mas koda refaktoriz\u0101cija. Pievienots Microchip SAM9x7, NXP i.MX95 un Qualcomm WCD939x ska\u0146u sist\u0113mu atbalsts. SoundWire draiver\u012b pievienots ASoC atbalsts ar AMD ACP 6.3 ska\u0146as koprocessoriem, savuk\u0101rt Intel sist\u0113m\u0101m realiz\u0113ts DSPless re\u017e\u012bms. Pievienots atbalsts papildu ska\u0146as kodekiem Cirrus HD. Virtio draiver\u012b uzlabota ska\u0146as ier\u012b\u010du p\u0101rvald\u012bba.\n<li class=\"l\"> Pievienots Marvell Octeon PCI Endpoint NIC VF un Intel E825-C 100G Ethernet kontrolieru atbalsts.            <\/ul>\n<\/ul>\n<p>Taj\u0101 pa\u0161\u0101 laik\u0101 Lat\u012b\u0146amerikas Br\u012bv\u0101s programmat\u016bras fonds ir izstr\u0101d\u0101jis piln\u012bgi br\u012bvu Linux-libre 6.9-gnu kodolu, kas ir att\u012br\u012bts no visa, kas satur nebr\u012bv\u0101s komponentes vai koda fragmentus, kuru lieto\u0161ana ir ierobe\u017eota ra\u017eot\u0101ja. 6.9 laidien\u0101 ir atjaunin\u0101ts kods, kas att\u012bra blobus amdgpu, ath12k, adreno, btusb un r8169 draiveros. Ir veikta att\u012br\u012b\u0161ana jaunajam ptp_fc3 draiverim. Blobu nosaukumu att\u012br\u012b\u0161ana tika veikta dts failos (devicetree) Aarch64 arhitekt\u016brai. Tika nov\u0113rstas probl\u0113mas ar i915 draivera att\u012br\u012b\u0161anu, kas izrais\u012bja sasal\u0161anu inicializ\u0101cijas laik\u0101. Ir veiktas izmai\u0146as, kas saist\u012btas ar blobu apstr\u0101di, kas tiek pieg\u0101d\u0101ti k\u0101 heksadecim\u0101lie dumpi.<br \/>\n<br \/>Avots: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=61160\">opennet.lv<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.9. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u043c\u043e\u0434\u0443\u043b\u044c dm-vdo \u0434\u043b\u044f \u0434\u0435\u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u0438 \u0441\u0436\u0430\u0442\u0438\u044f \u0431\u043b\u043e\u0447\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432, \u0440\u0435\u0436\u0438\u043c \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0444\u0430\u0439\u043b\u0430\u043c \u0432 FUSE, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f pidfd \u0434\u043b\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u0442\u043e\u043a\u043e\u0432, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c BPF-\u0442\u043e\u043a\u0435\u043d\u043e\u0432, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Rust \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 ARM64, \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0424\u0421 Ext2 \u0432 \u0440\u0430\u0437\u0440\u044f\u0434 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0445, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0440\u043e\u0433\u043e \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 NTFS, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-115726","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.9.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/lv\/blog\/news\/reliz-yadra-linux-6-9\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.9 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.9.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/lv\/blog\/news\/reliz-yadra-linux-6-9\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-05-13T11:52:06+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-05-13T11:52:06+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Linux 6.9 kodola izlaidums | ProHoster","description":"P\u0113c diviem m\u0113ne\u0161iem att\u012bst\u012bbas Linus Torvalds pazi\u0146oja par Linux 6.9 kodola izlaidumu.","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/news\/reliz-yadra-linux-6-9","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.9 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.9.","og:url":"https:\/\/prohoster.info\/lv\/blog\/news\/reliz-yadra-linux-6-9","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2024-05-13T11:52:06+00:00","article:modified_time":"2024-05-13T11:52:06+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"115726","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 00:14:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 00:14:20","updated":"2026-01-23 00:14:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/115726","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=115726"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/115726\/revisions"}],"predecessor-version":[{"id":164261,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/115726\/revisions\/164261"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=115726"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=115726"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=115726"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}