Linux 5.9 కెర్నల్ విడుదల

రెండు నెలల అభివృద్ధి తర్వాత, లైనస్ టోర్వాల్డ్స్ సమర్పించిన కెర్నల్ విడుదల Linux 5.9. అత్యంత ముఖ్యమైన మార్పులలో: యాజమాన్య మాడ్యూల్స్ నుండి GPL మాడ్యూల్‌లకు చిహ్నాల దిగుమతిని పరిమితం చేయడం, FSGSBASE ప్రాసెసర్ సూచనలను ఉపయోగించి సందర్భ మార్పిడి కార్యకలాపాలను వేగవంతం చేయడం, Zstdని ఉపయోగించి కెర్నల్ ఇమేజ్ కంప్రెషన్‌కు మద్దతు, కెర్నల్‌లోని థ్రెడ్‌ల ప్రాధాన్యతను మళ్లీ పని చేయడం, PRP కోసం మద్దతు (సమాంతర రిడెండెన్సీ ప్రోటోకాల్) , డెడ్‌లైన్ షెడ్యూలర్‌లో బ్యాండ్‌విడ్త్-అవేర్ షెడ్యూలింగ్, మెమరీ పేజీల ముందస్తు ప్యాకింగ్, కెపాబిలిటీ ఫ్లాగ్ CAP_CHECKPOINT_RESTOR, close_range() సిస్టమ్ కాల్, dm-క్రిప్ట్ పనితీరు మెరుగుదలలు, 32-బిట్ కొత్త Xen PV ల్యాబ్ గెస్ట్‌ల కోసం కోడ్ తొలగింపు, నిర్వహణ విధానం, Btrfsలో “రెస్క్యూ” ఎంపిక, ext4 మరియు F2FSలో ఇన్‌లైన్ ఎన్‌క్రిప్షన్‌కు మద్దతు.

కొత్త వెర్షన్‌లో 16074 డెవలపర్‌ల నుండి 2011 పరిష్కారాలు ఉన్నాయి,
ప్యాచ్ పరిమాణం - 62 MB (మార్పులు ప్రభావితం 14548 ఫైల్‌లు, 782155 లైన్‌ల కోడ్ జోడించబడ్డాయి, 314792 లైన్‌లు తొలగించబడ్డాయి). మొత్తం 45% 5.9లో అందించబడింది
మార్పులు పరికర డ్రైవర్లకు సంబంధించినవి, దాదాపు 15% మార్పులు
హార్డ్‌వేర్ ఆర్కిటెక్చర్‌లకు సంబంధించిన కోడ్‌ని అప్‌డేట్ చేయడం పట్ల వైఖరి, 13%
నెట్‌వర్క్ స్టాక్‌కు సంబంధించినది, 3% ఫైల్ సిస్టమ్‌లకు మరియు 3% అంతర్గతంగా
కెర్నల్ ఉపవ్యవస్థలు.

ప్రధాన ఆవిష్కరణలు:

  • మెమరీ మరియు సిస్టమ్ సేవలు
    • బిగుసుకుపోయింది GPL లైసెన్స్ క్రింద ఉన్న మాడ్యూల్‌ల కోసం మాత్రమే ఎగుమతి చేయబడిన కెర్నల్ భాగాలతో యాజమాన్య డ్రైవర్‌లను లింక్ చేయడం కోసం GPL లేయర్‌ల ఉపయోగం నుండి రక్షణ. TAINT_PROPRIETARY_MODULE ఫ్లాగ్ ఇప్పుడు ఈ ఫ్లాగ్‌తో మాడ్యూల్‌ల నుండి చిహ్నాలను దిగుమతి చేసే అన్ని మాడ్యూల్‌లలో వారసత్వంగా పొందబడింది. GPL మాడ్యూల్ GPL కాని మాడ్యూల్ నుండి చిహ్నాలను దిగుమతి చేయడానికి ప్రయత్నిస్తే, ఆ GPL మాడ్యూల్ TAINT_PROPRIETARY_MODULE లేబుల్‌ను వారసత్వంగా పొందుతుంది మరియు మాడ్యూల్ మునుపు నుండి చిహ్నాలను దిగుమతి చేసుకున్నప్పటికీ, GPL-లైసెన్స్ మాడ్యూల్‌లకు మాత్రమే అందుబాటులో ఉన్న కెర్నల్ భాగాలను యాక్సెస్ చేయదు. "గ్లోన్లీ" వర్గం. రివర్స్ లాక్ (EXPORT_SYMBOL_GPLని దిగుమతి చేసుకున్న మాడ్యూల్‌లలో EXPORT_SYMBOL_GPL మాత్రమే ఎగుమతి చేయడం) యాజమాన్య డ్రైవర్‌ల పనిని విచ్ఛిన్నం చేయగలదు (ప్రొప్రైటరీ మాడ్యూల్ ఫ్లాగ్ మాత్రమే వారసత్వంగా పొందబడుతుంది, కానీ GPL బైండింగ్‌లు కాదు).
    • చేర్చబడింది కోసం kcompactd ఇంజిన్ మద్దతు మెమరీ పేజీలను ప్రీ-ప్యాక్ చేయడం కెర్నల్‌కు అందుబాటులో ఉన్న పెద్ద మెమరీ పేజీల సంఖ్యను పెంచడానికి నేపథ్యంలో. ప్రాథమిక అంచనాల ప్రకారం, బ్యాక్‌గ్రౌండ్ ప్యాకేజింగ్, కనిష్ట ఓవర్‌హెడ్ ఖర్చుతో, పెద్ద మెమరీ పేజీలను (భారీ-పేజీ) కేటాయించేటప్పుడు ఆలస్యాన్ని తగ్గించవచ్చు, ఇది గతంలో ఉపయోగించిన ప్యాకేజింగ్ మెకానిజంతో పోలిస్తే 70-80 రెట్లు అవసరమవుతుంది (ఆన్-డిమాండ్ ) kcompactd అందించే బాహ్య ఫ్రాగ్మెంటేషన్ యొక్క సరిహద్దులను సెట్ చేయడానికి, sysctl vm.compaction_proactiveness జోడించబడింది.
    • చేర్చబడింది అల్గోరిథం ఉపయోగించి కెర్నల్ ఇమేజ్ కంప్రెషన్‌కు మద్దతు Zstandardard (zstd).
    • x86 సిస్టమ్స్ కోసం ప్రాసెసర్ సూచనల కోసం మద్దతు అమలు చేయబడింది FSGSBASE, ఇది యూజర్ స్పేస్ నుండి FS/GS రిజిస్టర్‌ల కంటెంట్‌లను చదవడానికి మరియు మార్చడానికి మిమ్మల్ని అనుమతిస్తుంది. కెర్నల్‌లో, GSBASE కోసం అనవసరమైన MSR వ్రాత కార్యకలాపాలను తొలగించడం ద్వారా సందర్భ మార్పిడి కార్యకలాపాలను వేగవంతం చేయడానికి FSGSBASE ఉపయోగించబడుతుంది మరియు వినియోగదారు స్థలంలో ఇది FS/GSని మార్చడానికి అనవసరమైన సిస్టమ్ కాల్‌లను నివారిస్తుంది.
    • చేర్చబడింది "allow_writes" పరామితి వినియోగదారు స్థలం నుండి ప్రాసెసర్ యొక్క MSR రిజిస్టర్‌లకు మార్పులను నిషేధించడానికి మరియు కార్యకలాపాలను చదవడానికి ఈ రిజిస్టర్‌ల కంటెంట్‌లకు ప్రాప్యతను పరిమితం చేయడానికి మిమ్మల్ని అనుమతిస్తుంది, ఎందుకంటే MSRని మార్చడం సమస్యలకు దారితీయవచ్చు. డిఫాల్ట్‌గా, రాయడం ఇంకా నిలిపివేయబడలేదు మరియు MSRకి మార్పులు లాగ్‌లో ప్రతిబింబిస్తాయి, అయితే భవిష్యత్తులో డిఫాల్ట్ యాక్సెస్‌ని రీడ్-ఓన్లీ మోడ్‌కి మార్చడానికి ప్లాన్ చేయబడింది.
    • అసమకాలిక I/O ఇంటర్‌ఫేస్‌కు io_uring కెర్నల్ థ్రెడ్‌లు అవసరం లేని అసమకాలిక బఫర్డ్ రీడ్ ఆపరేషన్‌లకు పూర్తి మద్దతు జోడించబడింది. భవిష్యత్ విడుదలలో రికార్డింగ్ మద్దతు ఆశించబడుతుంది.
    • I/O షెడ్యూలర్ గడువులో అమలు చేశారు సామర్థ్యం ఆధారంగా ప్రణాళిక, అనుమతించడం ARM-ఆధారిత వ్యవస్థల వంటి అసమాన వ్యవస్థలపై సరైన నిర్ణయాలు తీసుకోండి DynamIQ మరియు big.LITTLE, ఇది ఒక చిప్‌లో శక్తివంతమైన మరియు తక్కువ సమర్థవంతమైన శక్తి-సమర్థవంతమైన CPU కోర్లను మిళితం చేస్తుంది. ప్రత్యేకించి, ఒక పనిని సమయానికి పూర్తి చేయడానికి స్లో CPU కోర్ సరైన వనరులను కలిగి లేనప్పుడు, కొత్త మోడ్ మిమ్మల్ని షెడ్యూల్ అసమతుల్యతలను నివారించడానికి అనుమతిస్తుంది.
    • కెర్నల్‌లోని శక్తి వినియోగ నమూనా (ఎనర్జీ మోడల్ ఫ్రేమ్‌వర్క్) ఇప్పుడు వివరిస్తుంది CPU విద్యుత్ వినియోగ ప్రవర్తన మాత్రమే కాకుండా, పరిధీయ పరికరాలను కూడా కవర్ చేస్తుంది.
    • క్లోజ్_రేంజ్() సిస్టమ్ కాల్ ఓపెన్ ఫైల్ డిస్క్రిప్టర్‌ల మొత్తం శ్రేణిని ఒకేసారి మూసివేయడానికి ప్రక్రియను అనుమతించడానికి అమలు చేయబడింది.
    • టెక్స్ట్ కన్సోల్ మరియు fbcon డ్రైవర్ అమలు నుండి కోడ్ తీసివేయబడింది, ఇది VGA టెక్స్ట్ మోడ్ వీడియో మెమరీ కంటే ఎక్కువ ప్రోగ్రామాటిక్‌గా టెక్స్ట్ బ్యాక్ (CONFIG_VGACON_SOFT_SCROLLBACK) స్క్రోల్ చేయగల సామర్థ్యాన్ని అందిస్తుంది.
    • రీడిజైన్ చేయబడింది కెర్నల్‌లోని థ్రెడ్‌లకు ప్రాధాన్యతలను కేటాయించడానికి అల్గారిథమ్. రియల్ టైమ్ టాస్క్‌లకు ప్రాధాన్యతలను కేటాయించేటప్పుడు కొత్త ఎంపిక అన్ని కెర్నల్ సబ్‌సిస్టమ్‌లలో మెరుగైన అనుగుణ్యతను అందిస్తుంది.
    • sysctl జోడించబడింది sched_uclamp_util_min_rt_default నిజ-సమయ టాస్క్‌ల కోసం CPU బూస్ట్ సెట్టింగ్‌లను నియంత్రించడానికి (ఉదాహరణకు, మీరు బ్యాటరీ పవర్‌కి లేదా మొబైల్ సిస్టమ్‌లలోకి మారిన తర్వాత పవర్‌ను ఆదా చేయడానికి ఫ్లైలో రియల్ టైమ్ టాస్క్‌ల ప్రవర్తనను మార్చవచ్చు).
    • పేజీ కాష్‌లో పారదర్శక భారీ పేజీల సాంకేతికతకు మద్దతును అమలు చేయడానికి సన్నాహాలు చేయబడ్డాయి.
    • డైరెక్టరీ ఐటెమ్‌లు మరియు నాన్-డైరెక్టరీ ఆబ్జెక్ట్‌ల కోసం సృష్టి, తొలగింపు లేదా కదలిక ఈవెంట్‌లు సంభవించినప్పుడు మాతృ పేరు మరియు ప్రత్యేక FID సమాచారాన్ని నివేదించడానికి fanotify ఇంజిన్ కొత్త FAN_REPORT_NAME మరియు FAN_REPORT_DIR_FID ఫ్లాగ్‌లను అమలు చేస్తుంది.
    • cgroupల కోసం అమలు ఒక కొత్త స్లాబ్ మెమరీ కంట్రోలర్, ఇది స్లాబ్ అకౌంటింగ్‌ను మెమరీ పేజీ స్థాయి నుండి కెర్నల్ ఆబ్జెక్ట్ స్థాయికి తరలించడంలో ప్రసిద్ది చెందింది, ఇది ప్రతి cgroupకి ప్రత్యేక స్లాబ్ కాష్‌లను కేటాయించే బదులు వివిధ cgroupలలో స్లాబ్ పేజీలను పంచుకోవడం సాధ్యం చేస్తుంది. ప్రతిపాదిత విధానం స్లాబ్‌ను ఉపయోగించడం యొక్క సామర్థ్యాన్ని పెంచడం, స్లాబ్ కోసం ఉపయోగించే మెమరీ పరిమాణాన్ని 30-45% తగ్గించడం, కెర్నల్ యొక్క మొత్తం మెమరీ వినియోగాన్ని గణనీయంగా తగ్గించడం మరియు మెమరీ ఫ్రాగ్మెంటేషన్‌ను తగ్గించడం సాధ్యపడుతుంది.
    • సౌండ్ సబ్‌సిస్టమ్‌లో ALSA и USB స్టాక్, అనుగుణంగా ఇటీవల దత్తత తీసుకున్నారు Linux కెర్నల్‌లో సమ్మిళిత పదజాలాన్ని ఉపయోగించడంపై సిఫార్సులు; రాజకీయంగా తప్పు నిబంధనలు తొలగించబడ్డాయి. "స్లేవ్", "మాస్టర్", "బ్లాక్ లిస్ట్" మరియు "వైట్‌లిస్ట్" అనే పదాల నుండి కోడ్ క్లియర్ చేయబడింది.
  • వర్చువలైజేషన్ మరియు సెక్యూరిటీ
    • క్లాంగ్ కంపైలర్‌ని ఉపయోగించి కెర్నల్‌ను నిర్మిస్తున్నప్పుడు కనిపించాడు (CONFIG_INIT_STACK_ALL_ZERO) స్టాక్‌లో నిల్వ చేయబడిన అన్ని వేరియబుల్స్‌లో సున్నాకి ఆటోమేటిక్ ఇనిషియలైజేషన్‌ని కాన్ఫిగర్ చేయగల సామర్థ్యం (నిర్మాణం చేస్తున్నప్పుడు, “-ftrivial-auto-var-init=zero”ని పేర్కొనండి).
    • సెకాంప్ సబ్‌సిస్టమ్‌లో, యూజర్ స్పేస్‌లో ప్రాసెస్ కంట్రోల్ మోడ్‌ని ఉపయోగిస్తున్నప్పుడు, జోడించారు అవకాశం ఫైల్ డిస్క్రిప్టర్‌ల సృష్టికి దారితీసే సిస్టమ్ కాల్‌లను పూర్తిగా అనుకరించడానికి పర్యవేక్షించబడే ప్రక్రియలో ఫైల్ డిస్క్రిప్టర్‌ల ప్రత్యామ్నాయం. Chrome కోసం వివిక్త కంటైనర్ సిస్టమ్‌లు మరియు శాండ్‌బాక్స్ అమలులలో కార్యాచరణకు డిమాండ్ ఉంది.
    • xtensa మరియు csky ఆర్కిటెక్చర్‌ల కోసం, seccomp సబ్‌సిస్టమ్‌ని ఉపయోగించి సిస్టమ్ కాల్‌లను పరిమితం చేయడానికి మద్దతు జోడించబడింది. xtensa కోసం, ఆడిట్ మెకానిజం కోసం మద్దతు అదనంగా అమలు చేయబడుతుంది.
    • చేర్చబడింది కొత్త సామర్ధ్యం ఫ్లాగ్ CAP_CHECKPOINT_RESTORE, ఇది అదనపు అధికారాలను బదిలీ చేయకుండా ఫ్రీజింగ్ మరియు ప్రాసెస్‌ల స్థితిని పునరుద్ధరించడానికి సంబంధించిన సామర్థ్యాలకు ప్రాప్యతను అందించడానికి మిమ్మల్ని అనుమతిస్తుంది.
    • GCC 11 మీకు అవసరమైన అన్ని లక్షణాలను అందిస్తుంది
      డీబగ్గింగ్ సాధనం KCSAN (కెర్నల్ కాన్‌కరెన్సీ శానిటైజర్), కెర్నల్‌లోని రేస్ పరిస్థితులను డైనమిక్‌గా గుర్తించడానికి రూపొందించబడింది. అందువలన, KCSAN ఇప్పుడు GCCలో నిర్మించిన కెర్నల్‌లతో ఉపయోగించవచ్చు.

    • AMD జెన్ మరియు కొత్త CPU మోడల్‌ల కోసం జోడించారు P2PDMA సాంకేతికతకు మద్దతు, ఇది PCI బస్‌కు కనెక్ట్ చేయబడిన రెండు పరికరాల మెమరీ మధ్య ప్రత్యక్ష డేటా బదిలీ కోసం DMAని ఉపయోగించడానికి మిమ్మల్ని అనుమతిస్తుంది.
    • వర్క్ క్యూలను ఉపయోగించకుండా క్రిప్టోగ్రాఫిక్ డేటా ప్రాసెసింగ్ చేయడం ద్వారా జాప్యాన్ని తగ్గించడానికి మిమ్మల్ని అనుమతించే మోడ్ dm-cryptకి జోడించబడింది. సరైన ఆపరేషన్ కోసం ఈ మోడ్ కూడా అవసరం జోన్ చేయబడింది బ్లాక్ పరికరాలు (మొత్తం బ్లాక్‌ల సమూహాన్ని నవీకరిస్తూ వరుసగా వ్రాయవలసిన ప్రాంతాలతో కూడిన పరికరాలు). dm-క్రిప్ట్‌లో నిర్గమాంశను పెంచడానికి మరియు జాప్యాన్ని తగ్గించడానికి పని జరిగింది.
    • Xen హైపర్‌వైజర్‌ని అమలు చేస్తున్న పారావర్చువలైజేషన్ మోడ్‌లో నడుస్తున్న 32-బిట్ గెస్ట్‌లకు మద్దతు ఇవ్వడానికి కోడ్ తీసివేయబడింది. అటువంటి సిస్టమ్‌ల వినియోగదారులు అతిథి పరిసరాలలో 64-బిట్ కెర్నల్‌లను ఉపయోగించాలి లేదా పర్యావరణాలను అమలు చేయడానికి పారావర్చువలైజేషన్ (PV)కి బదులుగా పూర్తి (HVM) లేదా కంబైన్డ్ (PVH) వర్చువలైజేషన్ మోడ్‌లను ఉపయోగించాలి.
  • డిస్క్ సబ్‌సిస్టమ్, I/O మరియు ఫైల్ సిస్టమ్స్
    • Btrfs ఫైల్ సిస్టమ్‌పై అమలు చేశారు అన్ని ఇతర పునరుద్ధరణ ఎంపికలకు ప్రాప్యతను ఏకీకృతం చేసే "రెస్క్యూ" మౌంట్ ఎంపిక. "alloc_start" మరియు "subvolrootid" ఎంపికలకు మద్దతు తీసివేయబడింది మరియు "inode_cache" ఎంపిక నిలిపివేయబడింది. పనితీరు ఆప్టిమైజేషన్‌లు చేయబడ్డాయి, ముఖ్యంగా fsync() ఆపరేషన్‌ల అమలును వేగవంతం చేయడం గమనించదగినది. చేర్చబడింది CRC32c కాకుండా ప్రత్యామ్నాయ రకాల చెక్‌సమ్‌లను ఉపయోగించగల సామర్థ్యం.
    • చేర్చబడింది ext4 మరియు F2FS ఫైల్ సిస్టమ్‌లలో ఇన్‌లైన్ ఎన్‌క్రిప్షన్ (ఇన్‌లైన్ ఎన్‌క్రిప్షన్)ని ఉపయోగించగల సామర్థ్యం, ​​“ఇన్‌లైన్‌క్రిప్ట్” మౌంట్ ఐచ్ఛికాన్ని అందించడం కోసం. ఇన్‌లైన్ ఎన్‌క్రిప్షన్ మోడ్ డ్రైవ్ కంట్రోలర్‌లో నిర్మించిన ఎన్‌క్రిప్షన్ మెకానిజమ్‌లను ఉపయోగించడానికి మిమ్మల్ని అనుమతిస్తుంది, ఇది ఇన్‌పుట్/అవుట్‌పుట్‌ను పారదర్శకంగా ఎన్‌క్రిప్ట్ చేస్తుంది మరియు డీక్రిప్ట్ చేస్తుంది.
    • XFS లో సురక్షితం మెమరీ క్లీనప్ ఆపరేషన్ చేస్తున్నప్పుడు ప్రక్రియలను నిరోధించని పూర్తిగా అసమకాలిక రీతిలో inode రీసెట్ (ఫ్లష్). సాఫ్ట్ లిమిట్ మరియు ఐనోడ్ పరిమితి హెచ్చరికలు తప్పుగా ట్రాక్ చేయబడటానికి కారణమైన దీర్ఘకాల కోటా సమస్య పరిష్కరించబడింది. ext4 మరియు xfs కోసం DAX మద్దతు యొక్క ఏకీకృత అమలు.
    • Ext4లో అమలు చేశారు బ్లాక్ కేటాయింపు బిట్‌మ్యాప్‌లను ప్రీలోడ్ చేయండి. ప్రారంభించబడని సమూహాల పరిమిత స్కానింగ్‌తో కలిపి, ఆప్టిమైజేషన్ చాలా పెద్ద విభజనలను మౌంట్ చేయడానికి అవసరమైన సమయాన్ని తగ్గించింది.
    • F2FS లో జోడించబడింది ioctl F2FS_IOC_SEC_TRIM_FILE, ఇది ఫైల్‌లో పేర్కొన్న డేటాను భౌతికంగా రీసెట్ చేయడానికి TRIM/డిస్కార్డ్ ఆదేశాలను ఉపయోగించడానికి మిమ్మల్ని అనుమతిస్తుంది, ఉదాహరణకు, డ్రైవ్‌లో అవశేష డేటాను వదలకుండా యాక్సెస్ కీలను తొలగించడానికి.
      F2FS లో కూడా జోడించబడింది కొత్త చెత్త సేకరణ మోడ్ GC_URGENT_LOW, ఇది చెత్త సేకరణను ప్రారంభించే ముందు నిష్క్రియ స్థితిలో ఉన్నందుకు కొన్ని తనిఖీలను తొలగించడం ద్వారా మరింత దూకుడుగా పని చేస్తుంది.

    • bcacheలో, జోన్డ్ డివైజ్ కాష్‌లను ఎనేబుల్ చేయడానికి సన్నాహకంగా విస్తరణల కోసం బకెట్_సైజ్ 16 నుండి 32 బిట్‌లకు పెంచబడింది.
    • UFS కంట్రోలర్‌లు అందించిన అంతర్నిర్మిత హార్డ్‌వేర్ ఎన్‌క్రిప్షన్ ఆధారంగా ఇన్‌లైన్ ఎన్‌క్రిప్షన్‌ను ఉపయోగించగల సామర్థ్యం SCSI సబ్‌సిస్టమ్‌కు జోడించబడింది (యూనివర్సల్ ఫ్లాష్ నిల్వ).
    • కొత్త కెర్నల్ కమాండ్ లైన్ పరామితి “డీబగ్ఫ్స్” జోడించబడింది, ఇది అదే పేరుతో ఉన్న నకిలీ-FS లభ్యతను నియంత్రించడానికి మిమ్మల్ని అనుమతిస్తుంది.
    • NFSv4.2 క్లయింట్ పొడిగించిన ఫైల్ అట్రిబ్యూట్‌లకు (xattr) మద్దతునిస్తుంది.
    • dm-దుమ్ములో జోడించబడింది డిస్క్‌లో గుర్తించబడిన అన్ని చెడ్డ బ్లాక్‌ల జాబితాను ఒకేసారి ప్రదర్శించడానికి ఇంటర్‌ఫేస్ (“dmsetup సందేశం dust1 0 listbadblocks”).
    • md/raid5 కొరకు, STRIPE బ్లాక్ పరిమాణాన్ని కాన్ఫిగర్ చేయడానికి /sys/block/md1/md/stripe_size పరామితి జోడించబడింది.
    • NVMe నిల్వ పరికరాల కోసం జోడించారు డ్రైవ్ జోనింగ్ కమాండ్‌లకు (ZNS, NVM ఎక్స్‌ప్రెస్ జోన్డ్ నేమ్‌స్పేస్) మద్దతు, ఇది డ్రైవ్‌లోని డేటా ప్లేస్‌మెంట్‌పై మరింత పూర్తి నియంత్రణ కోసం బ్లాక్‌ల సమూహాలను రూపొందించే జోన్‌లుగా నిల్వ స్థలాన్ని విభజించడానికి మిమ్మల్ని అనుమతిస్తుంది.
  • నెట్‌వర్క్ సబ్‌సిస్టమ్
    • నెట్‌ఫిల్టర్‌లో జోడించారు రౌటింగ్ చెక్‌కు ముందు దశలో ప్యాకెట్‌లను తిరస్కరించే సామర్థ్యం (తిరస్కరణ వ్యక్తీకరణ ఇప్పుడు INPUT, FORWARD మరియు OUTPUT చైన్‌లలో మాత్రమే కాకుండా icmp మరియు tcp కోసం PREROUTING దశలో కూడా ఉపయోగించబడుతుంది).
    • nftables లో జోడించారు కాన్ఫిగరేషన్ మార్పులకు సంబంధించిన ఈవెంట్‌లను ఆడిట్ చేసే సామర్థ్యం.
    • నెట్‌లింక్ APIలోని nftablesలో జోడించారు అనామక గొలుసులకు మద్దతు, దీని పేరు కెర్నల్ ద్వారా డైనమిక్‌గా కేటాయించబడుతుంది. మీరు అనామక గొలుసుతో అనుబంధించబడిన నియమాన్ని తొలగించినప్పుడు, గొలుసు స్వయంచాలకంగా తొలగించబడుతుంది.
    • డేటాను యూజర్ స్పేస్‌లోకి కాపీ చేయకుండా అనుబంధ శ్రేణుల (మ్యాప్స్) ఎలిమెంట్‌లను ట్రావర్స్ చేయడానికి, ఫిల్టర్ చేయడానికి మరియు సవరించడానికి ఇటరేటర్‌లకు BPF మద్దతునిస్తుంది. TCP మరియు UDP సాకెట్‌ల కోసం ఇటరేటర్‌లను ఉపయోగించవచ్చు, BPF ప్రోగ్రామ్‌లు ఓపెన్ సాకెట్‌ల జాబితాలను మళ్లించడానికి మరియు వాటి నుండి అవసరమైన సమాచారాన్ని సేకరించేందుకు అనుమతిస్తుంది.
    • కొత్త రకం BPF ప్రోగ్రామ్ BPF_PROG_TYPE_SK_LOOKUP జోడించబడింది, ఇన్‌కమింగ్ కనెక్షన్ కోసం కెర్నల్ తగిన లిజనింగ్ సాకెట్ కోసం వెతుకుతున్నప్పుడు ప్రారంభించబడుతుంది. ఇలాంటి BPF ప్రోగ్రామ్‌ను ఉపయోగించడం ద్వారా, మీరు బైండ్() సిస్టమ్ కాల్‌తో నిర్బంధించబడకుండా, ఏ సాకెట్‌తో కనెక్షన్ అనుబంధించబడాలి అనే దానిపై నిర్ణయాలు తీసుకునే హ్యాండ్లర్‌లను సృష్టించవచ్చు. ఉదాహరణకు, మీరు ఒకే సాకెట్‌ను అనేక రకాల చిరునామాలు లేదా పోర్ట్‌లతో అనుబంధించవచ్చు. అదనంగా, SO_KEEPALIVE ఫ్లాగ్‌కు మద్దతు bpf_setsockopt()కి జోడించబడింది మరియు సాకెట్ విడుదలైనప్పుడు పిలువబడే BPF_CGROUP_INET_SOCK_RELEASE హ్యాండ్లర్‌లను ఇన్‌స్టాల్ చేసే సామర్థ్యం అమలు చేయబడింది.
    • ప్రోటోకాల్ మద్దతు అమలు చేయబడింది పిఆర్పి (సమాంతర రిడెండెన్సీ ప్రోటోకాల్), ఈథర్నెట్ ఆధారిత బ్యాకప్ ఛానెల్‌కు మారడానికి అనుమతిస్తుంది, ఏదైనా నెట్‌వర్క్ భాగాలు విఫలమైన సందర్భంలో అప్లికేషన్‌ల కోసం పారదర్శకంగా ఉంటాయి.
    • స్టాక్ mac80211 జోడించారు యాక్సెస్ పాయింట్ మోడ్‌లో నాలుగు-దశల WPA/WPA2-PSK ఛానెల్ చర్చలకు మద్దతు.
    • డిఫాల్ట్‌గా FQ-PIE (ఫ్లో క్యూ PIE) నెట్‌వర్క్ క్యూ మేనేజ్‌మెంట్ అల్గారిథమ్‌ను ఉపయోగించడానికి qdisc (క్యూయింగ్ డిసిప్లైన్) షెడ్యూలర్‌ను మార్చగల సామర్థ్యాన్ని జోడించారు, నెట్‌వర్క్‌లలోని ఎడ్జ్ నెట్‌వర్క్ పరికరాలపై (బఫర్‌బ్లోట్) ఇంటర్మీడియట్ ప్యాకెట్ బఫరింగ్ ప్రతికూల ప్రభావాన్ని తగ్గించే లక్ష్యంతో ఉంది. కేబుల్ మోడెములు.
    • వివిధ IP చిరునామాలతో అనుబంధించబడిన వివిధ నెట్‌వర్క్ ఇంటర్‌ఫేస్‌ల ద్వారా అనేక మార్గాల్లో ఏకకాలంలో ప్యాకెట్ల డెలివరీతో TCP కనెక్షన్ యొక్క ఆపరేషన్‌ను నిర్వహించడానికి TCP ప్రోటోకాల్ యొక్క పొడిగింపులు MPTCP (మల్టీపాత్ TCP)కి కొత్త ఫీచర్లు జోడించబడ్డాయి. syn కుక్కీ, DATA_FIN, బఫర్ ఆటో-ట్యూనింగ్, సాకెట్ డయాగ్నస్టిక్స్ మరియు setsockoptలో REUSEADDR, REUSEPORT మరియు V6ONLY ఫ్లాగ్‌లకు మద్దతు జోడించబడింది.
    • వర్చువల్ రౌటింగ్ టేబుల్స్ VRF (వర్చువల్ రూటింగ్ మరియు ఫార్వార్డింగ్) కోసం, ఒక సిస్టమ్‌లో అనేక రౌటింగ్ డొమైన్‌ల ఆపరేషన్‌ను నిర్వహించడానికి అనుమతిస్తుంది, "స్ట్రిక్ట్" మోడ్ అమలు చేయబడింది. ఈ మోడ్‌లో, ఇతర వర్చువల్ టేబుల్‌లలో ఉపయోగించని రూటింగ్ టేబుల్‌తో మాత్రమే వర్చువల్ టేబుల్ అనుబంధించబడుతుంది.
    • వైర్‌లెస్ డ్రైవర్ ath11k జోడించారు మద్దతు 6GHz ఫ్రీక్వెన్సీ మరియు స్పెక్ట్రల్ స్కానింగ్.
  • పరికరాలు
    • యూనికోర్ ఆర్కిటెక్చర్‌కు మద్దతుగా కోడ్ తీసివేయబడింది, పెకింగ్ విశ్వవిద్యాలయం యొక్క మైక్రోప్రాసెసర్ సెంటర్‌లో అభివృద్ధి చేయబడింది మరియు 2011లో Linux కెర్నల్‌లో చేర్చబడింది. ఈ ఆర్కిటెక్చర్ 2014 నుండి నిర్వహించబడదు మరియు GCCలో మద్దతు లేదు.
    • RISC-V ఆర్కిటెక్చర్‌కు మద్దతు అమలు చేయబడింది kcov (కెర్నల్ కోడ్ కవరేజీని విశ్లేషించడానికి డీబగ్‌ఫ్స్ ఇంటర్‌ఫేస్), kmemleak (మెమరీ లీక్ డిటెక్షన్ సిస్టమ్), స్టాక్ ప్రొటెక్షన్, జంప్ మార్కులు మరియు టిక్‌లెస్ ఆపరేషన్‌లు (టైమర్ సిగ్నల్‌లతో సంబంధం లేకుండా మల్టీ టాస్కింగ్).
    • PowerPC ఆర్కిటెక్చర్ కోసం, స్పిన్‌లాక్ క్యూల కోసం మద్దతు అమలు చేయబడింది, ఇది లాక్ సంఘర్షణ పరిస్థితులలో పనితీరును గణనీయంగా మెరుగుపరిచింది.
    • ARM మరియు ARM64 ఆర్కిటెక్చర్‌ల కోసం, ప్రాసెసర్ ఫ్రీక్వెన్సీ రెగ్యులేషన్ మెకానిజం డిఫాల్ట్‌గా ప్రారంభించబడుతుంది షెడ్యూటిల్ (cpufreq గవర్నర్), ఇది ఫ్రీక్వెన్సీని మార్చడంపై నిర్ణయం తీసుకోవడానికి టాస్క్ షెడ్యూలర్ నుండి సమాచారాన్ని నేరుగా ఉపయోగిస్తుంది మరియు ఫ్రీక్వెన్సీని త్వరగా మార్చడానికి cpufreq డ్రైవర్‌లను వెంటనే యాక్సెస్ చేయగలదు, CPU ఆపరేటింగ్ పారామితులను ప్రస్తుత లోడ్‌కు తక్షణమే సర్దుబాటు చేస్తుంది.
    • ఇంటెల్ గ్రాఫిక్స్ కార్డ్‌ల కోసం i915 DRM డ్రైవర్ మైక్రోఆర్కిటెక్చర్ ఆధారంగా చిప్‌లకు మద్దతునిస్తుంది. రాకెట్ సరస్సు మరియు వివిక్త కార్డ్‌లకు ప్రారంభ మద్దతు జోడించబడింది ఇంటెల్ Xe DG1.
    • Amdgpu డ్రైవర్ AMD GPUలకు ప్రారంభ మద్దతును జోడించింది నవీ 21 (నేవీ ఫ్లౌండర్) మరియు నవీ 22 (సియెన్నా సిచ్లిడ్). సదరన్ ఐలాండ్స్ GPU (రేడియన్ HD 7000) కోసం UVD/VCE వీడియో ఎన్‌కోడింగ్ మరియు డీకోడింగ్ యాక్సిలరేషన్ ఇంజిన్‌లకు మద్దతు జోడించబడింది.
      డిస్‌ప్లేను 90, 180 లేదా 270 డిగ్రీలు తిప్పడానికి ప్రాపర్టీ జోడించబడింది.

      ఆసక్తికరంగా, AMD GPU కోసం డ్రైవర్ ఇది కెర్నల్‌లో అతిపెద్ద డ్రైవర్ - ఇది దాదాపు 2.71 మిలియన్ లైన్‌ల కోడ్‌ను కలిగి ఉంది, ఇది మొత్తం కెర్నల్ పరిమాణంలో (10 మిలియన్ లైన్‌లు) సుమారు 27.81%. అదే సమయంలో, GPU రిజిస్టర్‌ల కోసం డేటాతో స్వయంచాలకంగా రూపొందించబడిన హెడర్ ఫైల్‌ల ద్వారా 1.79 మిలియన్ లైన్లు లెక్కించబడతాయి మరియు C కోడ్ 366 వేల పంక్తులు (పోలిక కోసం, ఇంటెల్ i915 డ్రైవర్‌లో 209 వేల పంక్తులు మరియు నోయువే - 149 వేలు ఉన్నాయి).

    • Nouveau డ్రైవర్‌లో జోడించారు ఉపయోగించి ఫ్రేమ్-బై-ఫ్రేమ్ సమగ్రతను తనిఖీ చేయడానికి మద్దతు CRC NVIDIA GPU డిస్‌ప్లే ఇంజిన్‌లలో (సైక్లిక్ రిడండెన్సీ చెక్‌లు). NVIDIA అందించిన డాక్యుమెంటేషన్ ఆధారంగా అమలు చేయబడుతుంది.
    • LCD ప్యానెల్‌ల కోసం జోడించబడిన డ్రైవర్‌లు: ఫ్రిదా FRD350H54004, KOE TX26D202VM0BWA, CDTech S070PWS19HP-FC21, CDTech S070SWV29HG-DC44, Tianma TM070JVingb33 XB.
    • ALSA ఆడియో సబ్‌సిస్టమ్ సపోర్ట్ చేస్తుంది ఇంటెల్ సైలెంట్ స్ట్రీమ్ (ప్లేబ్యాక్ ప్రారంభించేటప్పుడు ఆలస్యాన్ని తొలగించడానికి బాహ్య HDMI పరికరాల కోసం నిరంతర పవర్ మోడ్) మరియు కొత్త పరికరం మైక్రోఫోన్ యాక్టివేషన్ మరియు మ్యూట్ బటన్‌ల ప్రకాశాన్ని నియంత్రించడానికి మరియు కంట్రోలర్‌తో సహా కొత్త పరికరాలకు మద్దతును కూడా జోడించారు లూంగ్సన్ 7A1000.
    • ARM బోర్డ్‌లు, పరికరాలు మరియు ప్లాట్‌ఫారమ్‌లకు మద్దతు జోడించబడింది: Pine64 PinePhone v1.2, Lenovo IdeaPad Duet 10.1, ASUS Google Nexus 7, Acer Iconia Tab A500, Qualcomm Snapdragon SDM630 (Sony Xperia, XA10 ప్లస్ 10, XA2, XA2, XA2లో ఉపయోగించబడింది అల్ట్రా), Jetson Xavier NX, Amlogic WeTek Core2, Aspeed EthanolX, NXP i.MX6, MikroTik RouterBoard 3011, Xiaomi Libra, Microsoft Lumia 950, Sony Xperia Z5, MStar, Microchip 5, Amazon Keemx3, Inc v2, రెనెసాస్ RZ/GXNUMXH.

అదే సమయంలో, లాటిన్ అమెరికన్ ఫ్రీ సాఫ్ట్‌వేర్ ఫౌండేషన్ ఏర్పడింది
ఎంపిక పూర్తిగా ఉచిత కెర్నల్ 5.9 - Linux-libre 5.9-gnu, నాన్-ఫ్రీ కాంపోనెంట్‌లు లేదా కోడ్ సెక్షన్‌లను కలిగి ఉన్న ఫర్మ్‌వేర్ మరియు డ్రైవర్ ఎలిమెంట్‌ల నుండి క్లియర్ చేయబడింది, దీని పరిధి తయారీదారుచే పరిమితం చేయబడింది. కొత్త విడుదల WiFi rtw8821c మరియు SoC MediaTek mt8183 కోసం డ్రైవర్‌లలో బొట్టు లోడ్ చేయడాన్ని నిలిపివేస్తుంది. Habanalabs, Wilc1000, amdgpu, mt7615, i915 CSR, Mellanox mlxsw (Spectrum3), r8169 (rtl8125b-2) మరియు x86 టచ్‌స్క్రీన్ డ్రైవర్‌లు మరియు సబ్‌సిస్టమ్‌లలో బ్లాబ్ క్లీనింగ్ కోడ్ నవీకరించబడింది.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి