Why /proc/meminfo shows MemAvailable under Kernel Version 3.10?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP












0














I've been using CentOS 7 and its kernel version is 3.10. To check Kernel Version, I typed 'uname -r' and command showed 3.10.0-957.1.3.el7.x86_64



As far as I know, MemAvailable metric was introduced to Linux kernel version 3.14.



But, I ran /proc/meminfo and this command showed MemAvailable metric.



MemTotal: 3880620 kB
MemFree: 3440980 kB
MemAvailable: 3473820 kB


Why did my linux show MemAvailable metric? My Linux kernel is below 3.14










share|improve this question




























    0














    I've been using CentOS 7 and its kernel version is 3.10. To check Kernel Version, I typed 'uname -r' and command showed 3.10.0-957.1.3.el7.x86_64



    As far as I know, MemAvailable metric was introduced to Linux kernel version 3.14.



    But, I ran /proc/meminfo and this command showed MemAvailable metric.



    MemTotal: 3880620 kB
    MemFree: 3440980 kB
    MemAvailable: 3473820 kB


    Why did my linux show MemAvailable metric? My Linux kernel is below 3.14










    share|improve this question


























      0












      0








      0







      I've been using CentOS 7 and its kernel version is 3.10. To check Kernel Version, I typed 'uname -r' and command showed 3.10.0-957.1.3.el7.x86_64



      As far as I know, MemAvailable metric was introduced to Linux kernel version 3.14.



      But, I ran /proc/meminfo and this command showed MemAvailable metric.



      MemTotal: 3880620 kB
      MemFree: 3440980 kB
      MemAvailable: 3473820 kB


      Why did my linux show MemAvailable metric? My Linux kernel is below 3.14










      share|improve this question















      I've been using CentOS 7 and its kernel version is 3.10. To check Kernel Version, I typed 'uname -r' and command showed 3.10.0-957.1.3.el7.x86_64



      As far as I know, MemAvailable metric was introduced to Linux kernel version 3.14.



      But, I ran /proc/meminfo and this command showed MemAvailable metric.



      MemTotal: 3880620 kB
      MemFree: 3440980 kB
      MemAvailable: 3473820 kB


      Why did my linux show MemAvailable metric? My Linux kernel is below 3.14







      linux centos kernel memory proc






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Dec 23 '18 at 8:18









      Stephen Kitt

      165k24366445




      165k24366445










      asked Dec 23 '18 at 7:49









      mznet07

      32




      32




















          2 Answers
          2






          active

          oldest

          votes


















          1














          Your kernel identifies itself as 3.10 because that’s the baseline ABI which is maintained for RHEL 7 (and CentOS 7). The ABI is preserved so that, among other things, kernel modules built with an earlier release of RHEL 7 will continue working, as-is, in later releases.



          However, when this is possible without breaking the ABI, useful kernel features are backported from new kernels to the RHEL kernel. This includes MemAvailable, which has even been backported to the “2.6.32” kernel in RHEL 6! The changes in each release’s kernel are detailed in the release notes; see for example the changes in RHEL 7.6’s kernel.



          For an explanation of MemAvailable itself, see How can I get the amount of available memory portably across distributions?






          share|improve this answer




















          • Do you mean that 3.10 is not a linux kernel version literally and instead it is a kind of ABI version for only RHEL?
            – mznet07
            Dec 23 '18 at 13:59










          • It’s the kernel version which was used in the first release of RHEL 7 (with some patches even then), and is still the basis for the current RHEL 7 kernel, but the version number only indicates the minimum level of support (everything the upstream 3.10 kernel supports), not the maximum (the RHEL kernel supports more than the upstream 3.10 kernel).
            – Stephen Kitt
            Dec 23 '18 at 17:58


















          2














          This metric give you estimations about maximum size of application memory you can use without swapping. From this site




          An estimate of how much memory is available for starting new
          applications, without swapping. Calculated from MemFree,
          SReclaimable, the size of the file LRU lists, and the low watermarks
          in each zone.



          The estimate takes into account that the system needs some page cache
          to function well, and that not all reclaimable slab will be
          reclaimable, due to items being in use. The impact of those factors
          will vary from system to system.




          About why maybe will be better to ask kernel developers/RedHat company



          Usually RH do a lot of backporting staying with old version of the kernel.






          share|improve this answer


















          • 1




            agree with the "lot of backporting", eg nftables, introduced in kernel 3.13, is available (albeit perhaps not on par with latest kernels) on RHEL/CentOS 3.10 kernel.
            – A.B
            Dec 23 '18 at 9:12







          • 1




            Historically, for the better out worse, RH and friends also were the ones messing more with the kernel sources afair
            – Rui F Ribeiro
            Dec 23 '18 at 9:34










          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "106"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f490565%2fwhy-proc-meminfo-shows-memavailable-under-kernel-version-3-10%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          Your kernel identifies itself as 3.10 because that’s the baseline ABI which is maintained for RHEL 7 (and CentOS 7). The ABI is preserved so that, among other things, kernel modules built with an earlier release of RHEL 7 will continue working, as-is, in later releases.



          However, when this is possible without breaking the ABI, useful kernel features are backported from new kernels to the RHEL kernel. This includes MemAvailable, which has even been backported to the “2.6.32” kernel in RHEL 6! The changes in each release’s kernel are detailed in the release notes; see for example the changes in RHEL 7.6’s kernel.



          For an explanation of MemAvailable itself, see How can I get the amount of available memory portably across distributions?






          share|improve this answer




















          • Do you mean that 3.10 is not a linux kernel version literally and instead it is a kind of ABI version for only RHEL?
            – mznet07
            Dec 23 '18 at 13:59










          • It’s the kernel version which was used in the first release of RHEL 7 (with some patches even then), and is still the basis for the current RHEL 7 kernel, but the version number only indicates the minimum level of support (everything the upstream 3.10 kernel supports), not the maximum (the RHEL kernel supports more than the upstream 3.10 kernel).
            – Stephen Kitt
            Dec 23 '18 at 17:58















          1














          Your kernel identifies itself as 3.10 because that’s the baseline ABI which is maintained for RHEL 7 (and CentOS 7). The ABI is preserved so that, among other things, kernel modules built with an earlier release of RHEL 7 will continue working, as-is, in later releases.



          However, when this is possible without breaking the ABI, useful kernel features are backported from new kernels to the RHEL kernel. This includes MemAvailable, which has even been backported to the “2.6.32” kernel in RHEL 6! The changes in each release’s kernel are detailed in the release notes; see for example the changes in RHEL 7.6’s kernel.



          For an explanation of MemAvailable itself, see How can I get the amount of available memory portably across distributions?






          share|improve this answer




















          • Do you mean that 3.10 is not a linux kernel version literally and instead it is a kind of ABI version for only RHEL?
            – mznet07
            Dec 23 '18 at 13:59










          • It’s the kernel version which was used in the first release of RHEL 7 (with some patches even then), and is still the basis for the current RHEL 7 kernel, but the version number only indicates the minimum level of support (everything the upstream 3.10 kernel supports), not the maximum (the RHEL kernel supports more than the upstream 3.10 kernel).
            – Stephen Kitt
            Dec 23 '18 at 17:58













          1












          1








          1






          Your kernel identifies itself as 3.10 because that’s the baseline ABI which is maintained for RHEL 7 (and CentOS 7). The ABI is preserved so that, among other things, kernel modules built with an earlier release of RHEL 7 will continue working, as-is, in later releases.



          However, when this is possible without breaking the ABI, useful kernel features are backported from new kernels to the RHEL kernel. This includes MemAvailable, which has even been backported to the “2.6.32” kernel in RHEL 6! The changes in each release’s kernel are detailed in the release notes; see for example the changes in RHEL 7.6’s kernel.



          For an explanation of MemAvailable itself, see How can I get the amount of available memory portably across distributions?






          share|improve this answer












          Your kernel identifies itself as 3.10 because that’s the baseline ABI which is maintained for RHEL 7 (and CentOS 7). The ABI is preserved so that, among other things, kernel modules built with an earlier release of RHEL 7 will continue working, as-is, in later releases.



          However, when this is possible without breaking the ABI, useful kernel features are backported from new kernels to the RHEL kernel. This includes MemAvailable, which has even been backported to the “2.6.32” kernel in RHEL 6! The changes in each release’s kernel are detailed in the release notes; see for example the changes in RHEL 7.6’s kernel.



          For an explanation of MemAvailable itself, see How can I get the amount of available memory portably across distributions?







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Dec 23 '18 at 9:37









          Stephen Kitt

          165k24366445




          165k24366445











          • Do you mean that 3.10 is not a linux kernel version literally and instead it is a kind of ABI version for only RHEL?
            – mznet07
            Dec 23 '18 at 13:59










          • It’s the kernel version which was used in the first release of RHEL 7 (with some patches even then), and is still the basis for the current RHEL 7 kernel, but the version number only indicates the minimum level of support (everything the upstream 3.10 kernel supports), not the maximum (the RHEL kernel supports more than the upstream 3.10 kernel).
            – Stephen Kitt
            Dec 23 '18 at 17:58
















          • Do you mean that 3.10 is not a linux kernel version literally and instead it is a kind of ABI version for only RHEL?
            – mznet07
            Dec 23 '18 at 13:59










          • It’s the kernel version which was used in the first release of RHEL 7 (with some patches even then), and is still the basis for the current RHEL 7 kernel, but the version number only indicates the minimum level of support (everything the upstream 3.10 kernel supports), not the maximum (the RHEL kernel supports more than the upstream 3.10 kernel).
            – Stephen Kitt
            Dec 23 '18 at 17:58















          Do you mean that 3.10 is not a linux kernel version literally and instead it is a kind of ABI version for only RHEL?
          – mznet07
          Dec 23 '18 at 13:59




          Do you mean that 3.10 is not a linux kernel version literally and instead it is a kind of ABI version for only RHEL?
          – mznet07
          Dec 23 '18 at 13:59












          It’s the kernel version which was used in the first release of RHEL 7 (with some patches even then), and is still the basis for the current RHEL 7 kernel, but the version number only indicates the minimum level of support (everything the upstream 3.10 kernel supports), not the maximum (the RHEL kernel supports more than the upstream 3.10 kernel).
          – Stephen Kitt
          Dec 23 '18 at 17:58




          It’s the kernel version which was used in the first release of RHEL 7 (with some patches even then), and is still the basis for the current RHEL 7 kernel, but the version number only indicates the minimum level of support (everything the upstream 3.10 kernel supports), not the maximum (the RHEL kernel supports more than the upstream 3.10 kernel).
          – Stephen Kitt
          Dec 23 '18 at 17:58













          2














          This metric give you estimations about maximum size of application memory you can use without swapping. From this site




          An estimate of how much memory is available for starting new
          applications, without swapping. Calculated from MemFree,
          SReclaimable, the size of the file LRU lists, and the low watermarks
          in each zone.



          The estimate takes into account that the system needs some page cache
          to function well, and that not all reclaimable slab will be
          reclaimable, due to items being in use. The impact of those factors
          will vary from system to system.




          About why maybe will be better to ask kernel developers/RedHat company



          Usually RH do a lot of backporting staying with old version of the kernel.






          share|improve this answer


















          • 1




            agree with the "lot of backporting", eg nftables, introduced in kernel 3.13, is available (albeit perhaps not on par with latest kernels) on RHEL/CentOS 3.10 kernel.
            – A.B
            Dec 23 '18 at 9:12







          • 1




            Historically, for the better out worse, RH and friends also were the ones messing more with the kernel sources afair
            – Rui F Ribeiro
            Dec 23 '18 at 9:34















          2














          This metric give you estimations about maximum size of application memory you can use without swapping. From this site




          An estimate of how much memory is available for starting new
          applications, without swapping. Calculated from MemFree,
          SReclaimable, the size of the file LRU lists, and the low watermarks
          in each zone.



          The estimate takes into account that the system needs some page cache
          to function well, and that not all reclaimable slab will be
          reclaimable, due to items being in use. The impact of those factors
          will vary from system to system.




          About why maybe will be better to ask kernel developers/RedHat company



          Usually RH do a lot of backporting staying with old version of the kernel.






          share|improve this answer


















          • 1




            agree with the "lot of backporting", eg nftables, introduced in kernel 3.13, is available (albeit perhaps not on par with latest kernels) on RHEL/CentOS 3.10 kernel.
            – A.B
            Dec 23 '18 at 9:12







          • 1




            Historically, for the better out worse, RH and friends also were the ones messing more with the kernel sources afair
            – Rui F Ribeiro
            Dec 23 '18 at 9:34













          2












          2








          2






          This metric give you estimations about maximum size of application memory you can use without swapping. From this site




          An estimate of how much memory is available for starting new
          applications, without swapping. Calculated from MemFree,
          SReclaimable, the size of the file LRU lists, and the low watermarks
          in each zone.



          The estimate takes into account that the system needs some page cache
          to function well, and that not all reclaimable slab will be
          reclaimable, due to items being in use. The impact of those factors
          will vary from system to system.




          About why maybe will be better to ask kernel developers/RedHat company



          Usually RH do a lot of backporting staying with old version of the kernel.






          share|improve this answer














          This metric give you estimations about maximum size of application memory you can use without swapping. From this site




          An estimate of how much memory is available for starting new
          applications, without swapping. Calculated from MemFree,
          SReclaimable, the size of the file LRU lists, and the low watermarks
          in each zone.



          The estimate takes into account that the system needs some page cache
          to function well, and that not all reclaimable slab will be
          reclaimable, due to items being in use. The impact of those factors
          will vary from system to system.




          About why maybe will be better to ask kernel developers/RedHat company



          Usually RH do a lot of backporting staying with old version of the kernel.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Dec 23 '18 at 8:24

























          answered Dec 23 '18 at 7:54









          Romeo Ninov

          5,21231827




          5,21231827







          • 1




            agree with the "lot of backporting", eg nftables, introduced in kernel 3.13, is available (albeit perhaps not on par with latest kernels) on RHEL/CentOS 3.10 kernel.
            – A.B
            Dec 23 '18 at 9:12







          • 1




            Historically, for the better out worse, RH and friends also were the ones messing more with the kernel sources afair
            – Rui F Ribeiro
            Dec 23 '18 at 9:34












          • 1




            agree with the "lot of backporting", eg nftables, introduced in kernel 3.13, is available (albeit perhaps not on par with latest kernels) on RHEL/CentOS 3.10 kernel.
            – A.B
            Dec 23 '18 at 9:12







          • 1




            Historically, for the better out worse, RH and friends also were the ones messing more with the kernel sources afair
            – Rui F Ribeiro
            Dec 23 '18 at 9:34







          1




          1




          agree with the "lot of backporting", eg nftables, introduced in kernel 3.13, is available (albeit perhaps not on par with latest kernels) on RHEL/CentOS 3.10 kernel.
          – A.B
          Dec 23 '18 at 9:12





          agree with the "lot of backporting", eg nftables, introduced in kernel 3.13, is available (albeit perhaps not on par with latest kernels) on RHEL/CentOS 3.10 kernel.
          – A.B
          Dec 23 '18 at 9:12





          1




          1




          Historically, for the better out worse, RH and friends also were the ones messing more with the kernel sources afair
          – Rui F Ribeiro
          Dec 23 '18 at 9:34




          Historically, for the better out worse, RH and friends also were the ones messing more with the kernel sources afair
          – Rui F Ribeiro
          Dec 23 '18 at 9:34

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Unix & Linux Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f490565%2fwhy-proc-meminfo-shows-memavailable-under-kernel-version-3-10%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown






          Popular posts from this blog

          How to check contact read email or not when send email to Individual?

          Bahrain

          Postfix configuration issue with fips on centos 7; mailgun relay